加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

时间复杂度的分类和理解

(2013-01-29 18:50:18)
标签:

复杂度

时间

算法

效率

教育

分类: 数据结构及算法

时间复杂度的分类和理解

3.分类

按数量级递增排列,常见的时间复杂度有:

常数阶O(1), 注意:1仅仅表示常数的意思;

对数阶O(log2n),

线性阶O(n),

线性对数阶O(nlog2n),

平方阶O(n2)

立方阶O(n3),...

k次方阶O(nk),

指数阶O(2n)

随着问题规模n的不断增大,上述时间复杂度不断增大,算法的执行效率越低。

4.关于对其的理解

《数据结构(C语言版)》------严蔚敏 吴伟民编著 15页有句话"整个算法的执行时间与基本操作重复执行的次数成正比。"

基本操作重复执行的次数是问题规模n的某个函数f(n),于是算法的时间量度可以记为:T(n) = O( f(n) )

如果按照这么推断,T(n)应该表示的是算法的时间量度,也就是算法执行的时间。

而该页对语句频度也有定义:指的是该语句重复执行的次数。

如果是基本操作所在语句重复执行的次数,那么就该是f(n)

上边的n都表示的问题规模。

 

0

阅读 收藏 喜欢 打印举报/Report
前一篇:时间复杂度
后一篇:空间复杂度
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有