码迷,mamicode.com
首页 >  
搜索关键字:时间复杂度    ( 8884个结果
最短路径之Floyd算法
图文并茂。Dijkstra算法求某一个源点到其余各顶点时间复杂度是O(n^2),但如果采用此算法,找从某一源点到某一特定终点的最短路径,复杂度仍为O(n^2)。 求每一对顶点之间的最短路径: (1)每次以一个顶点为源点,重复执行Dijkstra算法n次。总的时间复杂度是O(n^3); (2)弗洛伊德(Floyd)算法:时间复杂度也是O(n^3),但形式上更简单。...
分类:其他好文   时间:2014-06-10 07:03:14    阅读次数:279
非常无聊——STD::sort VS 基数排序
众所周知,Std::sort()是一个非常快速的排序算法,它基于快排,但又有所修改。一般来说用它就挺快的了,代码一行,时间复杂度O(nlogn)(难道不是大叫一声“老子要排序!!”就排好了么。。。)。我们也知道,不基于比较的排序可以达到O(n),比如说基数排序。什么,它是O(n * log(10.....
分类:其他好文   时间:2014-06-10 00:04:07    阅读次数:326
字典树小结
字典树: 字典树 即Tire树,以一个空的头结点分若干的分支,来存放数据,虽浪费了大量内存,但是查找速度非常快。 匹配 时间复杂度 O(n) n = strlen(a); 字典树分 3步,建树、插入、查找 当然有时候,建树的选择是很重要的一点,尽量本着少往字典树上添加节点的原则,容易爆!!! 列入下面这题,用m建树,n来查找,即可AC,如果用n来建...
分类:其他好文   时间:2014-06-09 23:42:44    阅读次数:295
并查集—分离集合森林实现
并查集总结    今天总结一下并查集,这个完了之后,寒假学的数据结构基础的模板类的题目差不多就完了,对于模板题,敲上10遍、20遍、30遍,那么模板 就不是模板,就成为了你自己的东西,就好像 A+B 一辈子也忘不了,以后每天敲一遍模板题,加深对模板的理解。 并查集,一般使用的是 数组实现、树实现,其中数组实现时间复杂度较高,树实现也就是分离集合森林 查找、合并的时间复杂度不会...
分类:其他好文   时间:2014-06-09 23:14:04    阅读次数:204
[LeetCode] Sort List
Sort a linked list in O(n log n) time using constant space complexity.一谈到时间复杂度O(nlogn),立即联想到以下3种排序方法:1.归并排序(基于分治):时间复杂度O(nlogn),归并排序的最好、平均、最坏时间复杂度没有差别...
分类:其他好文   时间:2014-06-09 20:37:31    阅读次数:244
二分法求一元三次方程的一个实数根
一元一次方程的一般形式是$ax+b=0$,很容易解得$x=-\frac{b}{a}$。对于一元二次方程,也有一个简单的求根公式可以解出方程的根。但是一元三次方程的求根公式较为复杂,需分情况,编写程序的复杂度比前两个要大得多。你可能已经听说过二分查找法,在已排序的数组中查找某一个数的时间复杂度从$O(...
分类:其他好文   时间:2014-06-09 12:59:47    阅读次数:323
[LeetCode] Largest Rectangle in Histogram
第一种方法,暴力求解,从当前向左右两个方向扫描比自己小的,然后计算面积,时间复杂度O(n^2)code如下,但是在LeetCode上回超时。 1 class Solution { 2 public: 3 int largestRectangleArea(vector &height) { 4...
分类:其他好文   时间:2014-06-08 21:24:07    阅读次数:328
[LeetCode] Implement strStr() [18]
字符串匹配这也是个老题了,方法主要有下面4种, 1. 暴利破解法(BF),这个没啥说的,就是一轮一轮的比较,知道遇到相匹配的,这个的时间复杂度为O(n^2)。 2. KMP,这应该是字符串匹配领域中最长听说的算法了吧。 3. Horspool算法,这个不常听说,但是也是很有名的。 4. Boyer-Moore,这个听说过的人应该也不会很多,这个算法在大量字符串的情况下,效率是最高的,能达到kmp的3到4倍。 上面四种算法都很重要,一般标准库中的字符串匹配都使用的是暴力法。 上面四种算法详细的见我下面的这几篇...
分类:其他好文   时间:2014-06-08 03:19:54    阅读次数:187
浅谈算法和数据结构: 九 平衡查找树之红黑树
原文:浅谈算法和数据结构: 九 平衡查找树之红黑树前面一篇文章介绍了2-3查找树,可以看到,2-3查找树能保证在插入元素之后能保持树的平衡状态,最坏情况下即所有的子节点都是2-node,树的高度为lgN,从而保证了最坏情况下的时间复杂度。但是2-3树实现起来比较复杂,本文介绍一种简单实现2-3树的数...
分类:其他好文   时间:2014-06-07 20:18:15    阅读次数:364
浅谈算法和数据结构: 四 快速排序
原文:浅谈算法和数据结构: 四 快速排序上篇文章介绍了时间复杂度为O(nlgn)的合并排序,本篇文章介绍时间复杂度同样为O(nlgn)但是排序速度比合并排序更快的快速排序(Quick Sort)。快速排序是20世纪科技领域的十大算法之一 ,他由C. A. R. Hoare于1960年提出的一种划分交...
分类:其他好文   时间:2014-06-07 20:15:43    阅读次数:362
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!