
【算法导论】
xiazdong
ECNU-SEI
展开
-
【入门算法】思维导图
图是在其他地方找到的,感觉还挺好,就拿来,虽然里面我感觉还是比较基础,但是还是有借鉴作用的。原创 2012-11-04 14:41:02 · 5908 阅读 · 2 评论 -
【NPC】23、有向汉密尔顿回路规约到无向汉密尔顿回路
原创 2012-12-18 20:32:44 · 4264 阅读 · 0 评论 -
【NPC】22、CIRCUIT-SAT规约到SAT
原创 2012-12-18 15:50:40 · 5426 阅读 · 0 评论 -
细数二十世纪最伟大的十大算法
译者:July 二零一一年一月十日------------------------------------参考文献:The Best of the 20th Century: Editors Name Top 10 Algorithms。By Barry A. Cipra。地址:http://www.uta.edu/faculty/rcli/TopTen/topte转载 2012-12-29 17:14:09 · 7297 阅读 · 2 评论 -
【NPC】17、限制法证明NPC问题
Vertex_Cover(G=(V,E),k){击中集(V,E,k);}原创 2012-12-15 21:03:30 · 3382 阅读 · 0 评论 -
【NPC】19、汉密尔顿路径规约到有界度生成树问题
Hamilton_Path(G=(V,E)){ 有界度生成树(G,1)}原创 2012-12-15 21:18:06 · 3004 阅读 · 0 评论 -
【NPC】20、划分问题规约到背包问题
原创 2012-12-15 21:24:18 · 6414 阅读 · 0 评论 -
【NPC】18、团问题规约到子图同构问题
Clique(G=(V,E),k){ for each subgraph G' in G and |V'|=k { 子图同构(G,G') }}原创 2012-12-15 21:12:03 · 7259 阅读 · 0 评论 -
【NPC】16、汉密尔顿回路问题规约到旅行商问题
原创 2012-12-12 09:44:56 · 10039 阅读 · 0 评论 -
【NPC】21、证明电路可满足性问题是NPC问题
给定一个输入位数固定为n、且返回yes/no的算法,都能够在多项式时间内转换为一个多项式大小的电路。原创 2012-12-18 14:16:51 · 6074 阅读 · 0 评论 -
【NPC】9、顶点覆盖规约到无向汉密尔顿回路
一、问题描述 二、证明原创 2012-12-10 07:53:17 · 6071 阅读 · 0 评论 -
九大排序算法再总结
如果要转载,需要注明出处: http://blog.youkuaiyun.com/xiazdong本文是 http://blog.youkuaiyun.com/xiazdong/article/details/7304239 的补充,当年看了《大话数据结构》总结的,但是现在看了《算法导论》,发现以前对排序的理解还不深入,所以打算对各个排序的思想再整理一遍。本文首先介绍了基于比较模型的排序算法,原创 2013-01-03 21:46:48 · 309112 阅读 · 26 评论 -
三门问题(蒙提霍尔问题)
如果要转载,需要注明出处: http://blog.youkuaiyun.com/xiazdong这道题的来源是算法导论附录C中C.2-9和C.2-10,这道题是很著名的一个问题:三门问题,也称为蒙提霍尔问题问题描述:第一种表述:如果你是一个游戏的参与者,这个游戏的奖品放在三个幕布的其中一个后面,如果你选择了正确的幕布,你就会赢得奖品,如果你选择了一个幕原创 2013-01-17 22:03:10 · 5169 阅读 · 1 评论 -
散列表总结
如果要转载,需要注明出处: http://blog.youkuaiyun.com/xiazdong本文整理自《算法导论》第11章,由于本章有一些概率论知识,因此理解起来比较困难,但是一般只要记住结果即可。我在面试的时候也被问过:“请问哈希冲突的解决方法有哪些?”,这个问题的答案是:第一种是链接技术,即用双向链表来链接哈希值相同的元素。这种方法能够有良好性原创 2013-01-31 15:02:49 · 9000 阅读 · 0 评论 -
分治法总结
如果要转载,需要注明出处: http://blog.youkuaiyun.com/xiazdong在算法导论第三版中将算法导论第二版的“递归式”章节改为了“分治法”,而且加入了“Maximum Subarray”和“strassen矩阵计算”两个问题。本文依然会在讲解中穿插一些习题,以更好地理解分治法。一、递归式介绍分治法其实在很多地方都会看到,比如归并排序、快速排序等原创 2013-01-11 22:36:13 · 8877 阅读 · 1 评论 -
顺序统计学总结
如果要转载,需要注明出处: http://blog.youkuaiyun.com/xiazdong先来看一个问题:“给定一个无序的序列,求序列的中位数。”正常的答案都是“先排序,再取A[n/2],花费O(nlgn)”,学习完本文后,发现其实能够在O(n)求出中位数。但是要注意,有些场景下前一种方法更好,比如说:“要分别求第1个顺序统计量、第二个顺序统计量、第三个顺序统计原创 2013-01-27 12:38:40 · 5527 阅读 · 0 评论 -
渐近记号总结
如果要转载,需要注明出处: http://blog.youkuaiyun.com/xiazdong本文根据算法导论第三章总结,但其中加入了我对本章的一些补充,并且配合算法导论习题进行讲解。相信本文会让你对渐近记号有更深入地理解。一、定义介绍对于某个比较简单的算法,我们有时候确实能够精确地分析出算法的复杂度,比如算法复杂度为5n^2+10n+6,但是事实上原创 2013-01-10 22:10:12 · 14711 阅读 · 4 评论 -
第六章:堆排序
一、堆的基本概念一般我们讲的堆都是二叉堆。二叉堆简单地来说就是一个完全二叉树。完全二叉树:从左到右、从上到下塞满的一颗二叉树。满二叉树:每层都塞满的二叉树。堆分为大根堆(每个父亲都比儿子大,其中根为最大的元素)、小根堆(每个父亲都比儿子小,其中根为最小的元素)。某个节点的高度为从该节点到叶子节点经过的路径的长度,比如叶子节点的高度为0。d叉堆:一原创 2012-11-04 20:43:42 · 1662 阅读 · 0 评论 -
【NPC】24、3SAT规约到有向汉密尔顿回路
原创 2012-12-19 22:31:36 · 8436 阅读 · 3 评论 -
【NPC】15、顶点覆盖规约到集合覆盖
原创 2012-12-11 16:40:40 · 9896 阅读 · 0 评论 -
【NPC】14、子集和问题规约到划分问题
原创 2012-12-11 14:03:38 · 8962 阅读 · 3 评论 -
【NPC】3、3SAT规约到顶点覆盖
一、问题描述 二、证明原创 2012-12-04 23:25:08 · 7885 阅读 · 0 评论 -
第二十二章:图的基本算法
关于此章节的习题解答,请查阅 :https://sites.google.com/site/algorithmssolution/home/c22一、图的概念图的分类: 是否有环是否有重边是否有有向边Simple Undirected Graph(简单无向图)×××Mul原创 2012-10-31 14:17:09 · 4557 阅读 · 0 评论 -
第二数学归纳法
一般我们都是使用第一数学归纳法,但是对于第二数学归纳法,在算法导论中也是经常使用,比如22.4-2中证明算法正确性时会用到。第二数学归纳法原理是设有一个与自然数n有关的命题,如果: (1)当n=1时,命题成立; (2)假设当n≤k时命题成立,由此可推得当n=k+1时,命题也成立。那么,命题对于一切自然数n来说都成立。还有二元数学归纳法:在原创 2012-12-02 15:58:58 · 15970 阅读 · 0 评论 -
Dijkstra、Bellman_Ford、SPFA、Floyd算法复杂度比较
Dijkstra:适用于权值为非负的图的单源最短路径,用斐波那契堆的复杂度O(E+VlgV)BellmanFord:适用于权值有负值的图的单源最短路径,并且能够检测负圈,复杂度O(VE)SPFA:适用于权值有负值,且没有负圈的图的单源最短路径,论文中的复杂度O(kE),k为每个节点进入Queue的次数,且k一般但此处的复杂度证明是有问题的,其实SPFA的最坏情况应该是O(VE).Flo原创 2012-11-17 13:56:41 · 39883 阅读 · 3 评论 -
堆排序的最坏运行时间和最优运行时间
1964年Williams发明的,1992年Sedgewick发表了堆排序性能分析 "The analysis of heapsort"。所以求堆排序的最优运行时间比较难。一、最坏运行时间由于前面已经证明了:在n个元素的堆中,MAX-HEAPIFY的最坏运行时间为Ω(lgn)。如果要求堆排序的最坏运行时间,则可以假设每次MAX-HEAPIFY都是最坏原创 2012-11-17 13:23:39 · 19490 阅读 · 1 评论 -
当今世界最受人们重视的十大经典算法
当今世界,已经被发现或创造的经典算法数不胜数。如果,一定要投票选出你最看重的十大算法,你会作何选择列?最近,有人在StackExchange上发起了提问,向网友们征集当今世界最为经典的十大算法。众人在一大堆入围算法中进行投票,最终得出了呼声最高的以下十个算法。来自圣经的十大算法:发起人的描述:《来自圣经的证明》收集了数十个简洁而优雅的数学证明,迅速赢得了大批数学爱好者的追捧转载 2012-11-17 14:02:16 · 3497 阅读 · 0 评论 -
割点、割边、双连通分支
一、割点、割边、双连通分支概念挂接点(Articulation point)就是割点(Cut Vertex)桥(Bridge)就是割边(Cut Edge)割点:v为割点,则去掉v后,图的连通分支增加。割边:v为割边,则去掉v后,图的连通分支增加。割点形式化的定义:a是割点当且仅当存在两个点u,v使得u到v的每条路径都会经过a。(去掉a后,u到v没有路径)边双原创 2012-11-06 13:26:18 · 5417 阅读 · 0 评论 -
【NPC】4、3SAT规约到独立集
一、问题描述 二、证明原创 2012-12-04 23:28:33 · 12694 阅读 · 2 评论 -
【NPC】6、3SAT规约到三维匹配
一、问题描述 二、证明原创 2012-12-05 09:32:31 · 13449 阅读 · 0 评论 -
【NPC】13、三维匹配规约到子集和问题
原创 2012-12-11 13:47:00 · 6084 阅读 · 0 评论 -
【NPC】10、无向汉密尔顿回路规约到有向汉密尔顿回路
原创 2012-12-10 08:42:03 · 3333 阅读 · 0 评论 -
【NPC】8、3SAT规约到MAX2SAT
原创 2012-12-05 21:56:21 · 5542 阅读 · 1 评论 -
【NPC】12、汉密尔顿回路规约到汉密尔顿路径
原创 2012-12-10 09:13:23 · 5977 阅读 · 0 评论 -
【NPC】11、汉密尔顿路径规约到汉密尔顿回路
原创 2012-12-10 09:02:11 · 5438 阅读 · 0 评论 -
【NPC】5、顶点覆盖规约到独立集、团问题
一、问题描述 二、证明原创 2012-12-04 23:31:23 · 13328 阅读 · 0 评论 -
【NPC】2、SAT规约到3SAT
一、SAT、3SAT问题描述 二、证明原创 2012-12-04 23:21:14 · 30344 阅读 · 6 评论 -
【NPC】7、3维匹配规约到三元集合恰当覆盖
由于这个规约比较容易,过程略,直接写结果。3DM(X,Y,Z,T){ X3C(X∪Y∪Z,T)}原创 2012-12-05 09:33:36 · 3225 阅读 · 0 评论 -
【NPC】1、NP、P、NPC概念介绍
一、P、NP、NPC概念1971年,Stephen Cook提出了第一个NPC问题:布尔可满足性问题。1973年,Leonid Levin提出了21个经典的NPC问题。1979年,Garey和Johnson出版了一本书:“Computers and Intractability: A Guide to NP-Completeness”,中文版是“计算机和难解性”,在这本书中提出原创 2012-12-04 23:16:22 · 13763 阅读 · 1 评论