二分搜索 比较的复杂度为 logn下界+ 1
选择排序 比较次数n×(n – 1)/ 2 赋值次数0到3×(n – 1)
插入排序 比较次数在n – 1到n×(n – 1)/2
赋值次数 = 比较次数 + n – 1
自底向上排序 n为2的幂时 比较次数在
(n×logn)/ 2到n×logn – n + 1 之间
赋值次数2n logn
堆排序删除堆的最大值的时间复杂度为 O(logn)
创建堆 时间复杂度Ө(n)空间复杂度Ө(1)
堆排序 时间复杂度O(n×logn)空间复杂度O(1)
基数排序 时间复杂度Ө(kn)
寻找多数元素 时间复杂度O(n)
寻找第K小元素 时间复杂度Ө(n)
最近点对问题 时间复杂度Ө(n×logn)
最长公共子序列 时间复杂度Ө(n×m)空间复杂度Ө(n×m)
矩阵链相乘 时间复杂度Ө(n立方)空间复杂度Ө(n平方)
所有点对最短路径问题(FLOYD)
01背包问题 时间复杂度Ө(nC)空间复杂度Ө(nC)
Dijkstra 时间复杂度Ө(n平方)
Kruskal 时间复杂度O(m×logm)
Prim 时间复杂度Ө(n平方)
文件压缩(哈夫曼树) 时间复杂度O(n×logn)
三着色问题 时间复杂度O(n×3的n次方)
八皇后问题 时间复杂度O(n的n次方)