常用时间复杂度
来源:互联网 发布:c 在线客服系统源码 编辑:程序博客网 时间:2024/06/15 05:08
按数量级递增排列,常见的时间复杂度有:
常数阶O(1),对数阶O(log2n),线性阶O(n),
线性对数阶O(nlog2n),平方阶O(n^2),立方阶O(n^3),...,
k次方阶O(n^k),指数阶O(2^n)。随着问题规模n的不断增大,上述时间复杂度不断增大,算法的执行效率越低。
时间复杂度:基本操作重复执行的次数的阶数 T(n)=o(f(n))以下六种计算算法时间的多项式是最常用的。其关系为: O(1)<O(logn)<O(n)<O(nlogn) <O(n2)<O(n3)指数时间的关系为: O(2n)<O(n!)<O(nn) 当n取得很大时,指数时间算法和多项式时间算法在所需时间上非常悬殊。
以下是一些常见时间复杂度的例子。
名称 复杂度类 运行时间( )
运行时间举例 算法举例 常数时间10判断一个二进制数的奇偶反阿克曼时间
并查集的单个操作的平摊时间迭代对数时间
en:Cole-Vishkin algorithm对数对数时间
有界优先队列的单个操作[1]对数时间DLOGTIME
,
二分搜索幂对数时间
(小于1次)幂时间
,其中
,
K-d树的搜索操作线性时间
无序数组的搜索线性迭代对数时间
Raimund Seidel的三角分割多边形算法线性对数时间
,
最快的比较排序二次时间
冒泡排序、插入排序三次时间
矩阵乘法的基本实现,计算部分相关性多项式时间P
,
,
线性规划中的en:Karmarkar's algorithm,AKS质数测试准多项式时间QP
关于有向斯坦纳树问题最著名的
近似算法次指数时间(第一定义)SUBEXP
,对任意的ε > 0
Assuming complexity theoretic conjectures, BPP is contained in SUBEXP.[2]次指数时间(第二定义) 2o(n)2n1/3Best-known algorithm for integer factorization and graph isomorphism指数时间E2O(n)1.1n, 10n使用动态规划解决旅行推销员问题阶乘时间 O(n!)n!通过暴力搜索解决旅行推销员问题指数时间EXPTIME2poly(n)2n, 2n2 双重指数时间2-EXPTIME22poly(n)22nDeciding the truth of a given statement in Presburger arithmetic
0 0
- 常用时间复杂度
- 常用算法时间复杂度
- 常用时间复杂度排序
- 常用时间复杂度整理
- 常用排序及其时间复杂度
- 常用的时间复杂度排序
- 常用数据结构的时间复杂度
- 常用算法时间空间复杂度
- 常用算法时间复杂度表
- 常用数据结构的时间复杂度
- 常用数据结构的时间复杂度
- 常用算法的时间复杂度
- 常用算法时间空间复杂度
- 常用的算法的时间复杂度和空间复杂度
- 常用的排序算法的时间复杂度和空间复杂度
- 常用的排序算法的时间复杂度和空间复杂度
- 常用的排序算法的时间复杂度和空间复杂度
- 常用排序算法的时间复杂度与空间复杂度
- 筛法求素数!!!
- ubuntu 14.0 安装retext
- linux shell notes
- 某本c语言书
- Comparable接口和Comparator接口区别
- 常用时间复杂度
- php每日学习总结(9)
- java 中list,set,map集合的用法和区别
- Hibernate缓存机制和四种状态
- hdu 2120 Ice_cream's world I
- RoBa's blogProgramming, algorithm, and daily lifeRe: 真的ACM很有用么?
- hdu 2119 Matrix(二分最大匹配)
- leetcode Partition List
- 矩阵的快速幂