随笔分类 -  数据结构及算法

摘要:欧式筛法求素数 def euler_primary(n): """ 记录[0,n)之间的素数 """ is_primary = [1]*(n+1) is_primary[0] = is_primary[1] =0 primary = [] for num in range(2, n): if is_ 阅读全文
posted @ 2022-07-31 14:34 林東雨 阅读(39) 评论(0) 推荐(0)
摘要:Date:2019-07-31 19:03:46 算法实现 阅读全文
posted @ 2019-07-31 19:04 林東雨 阅读(232) 评论(0) 推荐(0)
摘要:Date:2019-07-25 16:03:14 算法实现 阅读全文
posted @ 2019-07-25 16:05 林東雨 阅读(273) 评论(0) 推荐(0)
摘要:Date:2019-07-22 19:33:09 总是选择当前最优的策略,来获得全局最优的解 Sample: 阅读全文
posted @ 2019-07-22 19:34 林東雨 阅读(185) 评论(0) 推荐(0)
摘要:Date:2019-07-18 19:58:48 阅读全文
posted @ 2019-07-18 20:00 林東雨 阅读(935) 评论(0) 推荐(0)
摘要:Date:2019-07-11 19:42:01 算法实现 阅读全文
posted @ 2019-07-11 19:43 林東雨 阅读(287) 评论(0) 推荐(0)
摘要:Date:2019-07-08 18:56:02 算法实现 阅读全文
posted @ 2019-07-08 18:57 林東雨 阅读(373) 评论(0) 推荐(0)
摘要:Date:2019-07-05 19:35:27 算法实现 1 /* 分数的表示和化简 */ 2 /* 3 1.分数的表示 4 */ 5 6 // 7 //1.down非负,若分数为负,则令up为负 8 //2.分数为零,则令up=0, down=1 9 //3.up和down的gcd=1 10 / 阅读全文
posted @ 2019-07-05 19:36 林東雨 阅读(1579) 评论(0) 推荐(0)
摘要:Date:2019-06-28 13:51:23 二叉树的建立 注意一下中序和层序建树 二叉树的遍历 多叉树的静态表示 阅读全文
posted @ 2019-06-28 14:07 林東雨 阅读(1323) 评论(0) 推荐(0)
摘要:Date:2019-06-25 14:40:32 基本操作 注意:数据量较大时,插入建树的时间复杂度会很高,慎用! 删除优化 删除操作中,找到替换结点后,该结点就是接下来需要删除的结点,直接删除即可 目前PAT考试中还没有考察过删除结点相关的算法 阅读全文
posted @ 2019-06-25 14:48 林東雨 阅读(298) 评论(0) 推荐(0)
摘要:Date:2019-06-23 13:42:53 阅读全文
posted @ 2019-06-23 13:44 林東雨 阅读(383) 评论(0) 推荐(0)
摘要:Date:2019-06-21 14:42:04 做题时更多的是用到哈夫曼树的构造思想,即按照问题规模从小到大,依次解决问题,可以得到最优解 Description: 在一个果园里,多多已经将所有的果子打了下来,而且按果子的不同种类分成了不同的堆。多多决定把所有的果子合成一堆。 每一次合并,多多可以 阅读全文
posted @ 2019-06-21 14:49 林東雨 阅读(908) 评论(0) 推荐(0)
摘要:Date:2019-06-18 14:14:31 单源最短路径 即求图中某一顶点到其他各顶点的最短路径 Dijskra算法 权值非负 伪码描述 邻接矩阵实现 邻接表实现 多条最短路径求解第二尺度最优路径 算法实现 Dijskra算法+DFS 含有多个标准尺度的最短路径 Bellman-Ford算法 阅读全文
posted @ 2019-06-18 14:54 林東雨 阅读(904) 评论(0) 推荐(0)
摘要:Date:2019-06-17 17:47:15 算法思想 算法实现 相关练习 更新后的大纲把动态规划都删除了,但关键路径还留着,虽然一直没考过,说不准哪天就考了呢。 Source: Codeup 23132: 关键路径 题目描述 描述: 图的连接边上的数据表示其权值,带权值的图称作网。 上图可描述 阅读全文
posted @ 2019-06-17 17:56 林東雨 阅读(1626) 评论(0) 推荐(0)
摘要:Date:2019-06-17 14:43:59 算法描述 1.定义队列Q,并把所有入度为0的结点加入队列 2.取队首结点,输出。然后删除所有从它除法的边,并令这些边到达的顶点的入度-1,若某个顶点的入度为0,则加入队列Q 3.反复进行2操作,直至队列为空。 如果队列为空时入过队的结点数目恰好为N, 阅读全文
posted @ 2019-06-17 15:38 林東雨 阅读(777) 评论(0) 推荐(0)
摘要:Date: 2019-04-11 18:49:18 AVL树的基本操作 判断一棵树是否为AVL树 阅读全文
posted @ 2019-06-03 21:30 林東雨 阅读(400) 评论(0) 推荐(0)
摘要:Date:2019-03-25 19:36:45 判断一棵树是否为完全二叉树 阅读全文
posted @ 2019-06-03 21:27 林東雨 阅读(464) 评论(0) 推荐(0)
摘要:Date:2019-05-16 21:12:35 图的存储 邻接表: 适合稀疏图,V多E少; 邻接矩阵: 适合稠密图,V少E多; 通常顶点数bu超过1e3时考虑用邻接矩阵,否则会超时; 图的遍历 DFS: BFS: 阅读全文
posted @ 2019-05-16 21:22 林東雨 阅读(546) 评论(0) 推荐(0)
摘要:素数的判断: 获取素数表: 埃氏筛法(Eratosthenes): 时间复杂度:O( Nlog(logN) ) 第一个测出地球周长的男人-。- 欧氏筛法(Euler): 时间复杂度:O(N) 欧拉待过的俄法德,都曾是世界最强的国家,如果当初欧拉来中国,是不是咱们就年年ACM总冠军了-。- 阅读全文
posted @ 2019-05-12 21:31 林東雨 阅读(449) 评论(0) 推荐(0)
摘要:Date:2019-05-10 20:12:27 直接插入排序 时间复杂度:O(N^2) 空间复杂度:O(1) 稳定性:不会出现相同元素相对位置发生变化 适用性:顺序存储和链式存储 折半插入排序(二分插入排序) 减少了比较元素的次数,约为O(Nlog2N) 由于没有并未减少移动元素的次数,时间复杂度 阅读全文
posted @ 2019-05-10 20:47 林東雨 阅读(213) 评论(0) 推荐(0)