算法一:Floyed算法 O(n^3) 这个算法复杂度有点高,所以我们推荐下一个算法。 算法二:Dijkstra算法 O(n^2) : 求某个结点到其它所有结点的最短路,但无法用于存在负权边的图 这个算法复杂度低一些,主要思想就是先设定起点 dis[i] = 0, mark[i] = 1; 然后对剩 ...
分类:
其他好文 时间:
2018-07-23 22:04:50
阅读次数:
150
常见的几种排序算法复杂度如下: 方式: 平均 最坏 最好 插入 n^2 n^2 n 希尔 n^1.3 / / 冒泡 n^2 n^2 n 快速 nlogn n^2 nlogn 选择 n^2 n^2 n^2 堆排 nlogn nlogn nlogn 归并 nlogn nlogn nlogn 基数 d(n ...
分类:
编程语言 时间:
2018-07-17 16:42:48
阅读次数:
142
1 要求算法复杂度比 O(n log n) 要好, 这就有点难了... 首先本来看题还挺简单, 不就是hash搞定, 结果看到最后 来个时间复杂度要求. 歇菜了 2 直接看答案了, discuss区第一名的答案直接就是On 的效率, 我只能说... 这帮人怎么这么聪明, 我怎么这么蠢 3 基本原理是 ...
分类:
其他好文 时间:
2018-07-05 01:21:37
阅读次数:
142
使用的算法:Floyd最短路算法 算法复杂度:O(n^3) 例: ...
分类:
编程语言 时间:
2018-06-20 22:35:52
阅读次数:
194
Q:设计一个高效的算法,将顺序表的所有元素逆置,要求算法的空间复杂度是O(1); A:此算法复杂度对应王道练习中第一章第二题,算法的主要思想如下: (1)扫描顺序表的前半部分元素,对于L.data[i](i大于等于0小于L.length-1) (2)将其余后半部分对应元素L.data[L.lengt ...
分类:
编程语言 时间:
2018-06-15 22:37:44
阅读次数:
170
选择排序 (不稳定) 选择排序是给每个位置选择当前元素最小的,比如给第一个位置选择最小的,在剩余元素里面给第二个元素选择第二小的,依次类推,直到第n-1个元素,第n个元素不用选择了,因为只剩下它一个最大的元素了。那么,在一趟选择中,如果当前元素比一个元素大,而该小的元素又出现在一个和当前元素相等的元 ...
分类:
编程语言 时间:
2018-06-02 11:11:13
阅读次数:
198
COMMENTS 标题作者日期 Re:luogu2398 SUM GCD headchen 2018-04-24 10:31 但这个不是【正解】,因为算法复杂度是O(n)logn的,测试数据一强就不行了。 Re:POJ1144 Network 无向图割点 headchen 2018-03-30 16 ...
分类:
其他好文 时间:
2018-05-26 11:49:26
阅读次数:
187
刚才想着把算法复杂度降为O(n^2),但其实对于第i+1行~第n行加上第k行*一个系数,第k行的各个数的值不是相等的,是我想多了…………………… 程序: AX=B,已知A,B,求X A(i,j) i>=j 都不用处理 1.化为上三角矩阵 (实际上是A(i,j) [i>=j] 被忽略) 2.根据上三角 ...
分类:
其他好文 时间:
2018-05-14 23:01:57
阅读次数:
227
【题目描述:】 cyrcyr今天在种树,他在一条直线上挖了n个坑。这n个坑都可以种树,但为了保证每一棵树都有充足的养料,cyrcyr不会在相邻的两个坑中种树。而且由于cyrcyr的树种不够,他至多会种k棵树。假设cyrcyr有某种神能力,能预知自己在某个坑种树的获利会是多少(可能为负),请你帮助他计 ...
分类:
其他好文 时间:
2018-05-13 11:52:44
阅读次数:
135
LRU全称是Least Recently Used,即最近最久未使用的意思。 LRU算法的设计原则是:如果一个数据在最近一段时间没有被访问到,那么在将来它被访问的可能性也很小。也就是说,当限定的空间已存满数据时,应当把最久没有被访问到的数据淘汰。 实现LRU 1.用一个数组来存储数据,给每一个数据项 ...
分类:
编程语言 时间:
2018-05-09 14:54:21
阅读次数:
286