第23章 最小生成树 23.1 最小生成树的形成 23.1 5 对于任意一个被e横跨的割,我们知道,它必然会被另一个与e在同一个环上的边横跨。而“e为连通图$G=(V,E)$的某条环路上权重最大的边”,如果e是唯一最大的,那么所以任意时刻e不会成为一个安全边,所以图G中必然存在一棵不包含边e的最小生 ...
分类:
编程语言 时间:
2020-01-01 13:26:10
阅读次数:
104
第24章 单源最短路径 24.1 Bellman Ford算法 24.1 4 思路: 先做|V| 1遍松弛操作,然后再做一遍松弛操作,对于这次松弛操作中dist值被更新的点,必然包含了每个负环中的至少一个点。对于这些点做dfs查找它们能够在图中到达哪些点,所有被搜索到的点即为题目要求找的点 部分c+ ...
分类:
编程语言 时间:
2019-12-31 23:46:27
阅读次数:
171
数据结构书籍与算法书(包括 "算法导论" 、 "算法设计" )通常将优先队列(Priority Queue)与堆(Heap)放在一起讲,算法导论上先讲堆这个特殊的数据结构,后讲堆的两个应用,堆排序与优先队列。算法设计这本书先讲优先队列是个什么样的数据结构,有什么性质,为什么需要优先队列这种数据结构, ...
分类:
其他好文 时间:
2019-12-22 00:19:43
阅读次数:
145
【我走过的弯路】 我不是科班毕业的学生,带我的leader说要打好计算机基础,算法是一个基础。一般就会网上一搜‘如何学好算法’,这么一搜就会有很多的答案: 人们说,算法导论/segdewick的算法好; 人们说,初学者不要看算法导论很难; 人们说,小白先看算法图解; 人们说,清华大学的邓俊辉老师的网 ...
分类:
编程语言 时间:
2019-12-08 21:24:01
阅读次数:
121
第1章 算法面试到底是什么鬼?一提起算法面试,很多同学就会心有余悸。可其实,大多数企业的算法面试,并没有那么可怕。并不是一定要啃完整本《算法导论》,才能玩儿转算法面试;也并不是只有ACM参赛选手,才能笑傲算法面试。恰恰相反,大多数算法面试关注的算法思维,其实很基础。在这一章,和大家聊一聊,算法面试, ...
分类:
编程语言 时间:
2019-11-27 00:30:02
阅读次数:
80
这个算法在算法导论上写的很晦涩,而且还搞了一大堆定义和推导。其实背后的想法很naive。 既然要做字符串匹配,那就构造一个有限自动机出来:对于长度为n的pattern,如果当前字符串匹配上了一个字符,那么自动机的状态就是1;如果当前字符串匹配上了两个字符,那么自动机的状态就是2,……如果当前字符串把 ...
分类:
其他好文 时间:
2019-11-05 01:01:52
阅读次数:
147
先来说网上流行最多的实现,用两个指针,一个从前往后,一个从后往前。直接上代码,如下。 再来说说我最喜欢的风格,也是算法导论上的快排实现方法,两个指针从同一边开始,算法导论的思路很清晰,还给出了完整的理论推导,不变性的证明,有兴趣的可以去看看算法道路的快排章节。 下面是算法导论关于快排的实现思路,如下 ...
分类:
编程语言 时间:
2019-10-21 11:22:53
阅读次数:
81
读一本好书,会让人有一种神清气爽的感觉。互联网相关技术虽然发展飞速,但是有些知识高度抽象,历久弥新,已成经典。有些书适合精读,有些书适合泛读,下面会列一些我读过,觉得还不错的书跟大家分享,其中不乏经典,部分书籍翻阅不下10遍(如算法导论)。书中的内容不见得工作中都会用到,但是能开阔视野,打开思路。面... ...
分类:
其他好文 时间:
2019-10-12 01:18:38
阅读次数:
90
花了一个星期读这本书的前两章,其中令我最深刻的就是如何成为一个优秀的程序员,其中关于错误,基础的学习更是令我印象深刻。 首先要做一个注重实效的程序员,要保留有好奇心,要有批判的思维,有现实感,多才多艺。不要被新名词新技术所迷惑,也许你刚开始听着老师说的东西,听不明白,你所要做的是不是敬而远之,而是要 ...
分类:
其他好文 时间:
2019-09-28 18:00:17
阅读次数:
78
算法导论 第三章 函数的增长 1.渐近紧确界 渐近记号Θ、Ο、o、Ω、ω详解 链接:https://blog.csdn.net/so_geili/article/details/53353593##目录: 1.渐近紧确界记号:Θ ΘΘ(big-theta)2.渐近上界记号?:O OO(big-oh) ...
分类:
编程语言 时间:
2019-09-14 23:02:32
阅读次数:
101