| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 764 人关注过本帖
标题:算法时间复杂度
只看楼主 加入收藏
wanglili18
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2009-4-24
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:2 
算法时间复杂度
算法时间复杂度是指
A执行算法程序所需要的时间
B算法执行过程中所需要的基本运算次数
参考书上是B,老师说是A,究竟算是什么?
谢谢了!
搜索更多相关主题的帖子: 算法 
2009-08-26 20:24
debroa723
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:23
帖 子:862
专家分:1954
注 册:2008-10-12
收藏
得分:20 
两个都不是很准确,虽然复杂度会影响到运算时间,却不能用运算时间来表示,更不能直接理解为基本运算的次数。
如果一段代码中没有循环,就是常量复杂度,不管在什么情况,它的运算时间是一个常数。
如果这段代码中有非嵌套的循环,那么它的复杂度为线性复杂度,运算时间是根据循环的次数线性增长。
如果这段代码中有循环嵌套,那么它的复杂度就是指数复杂度,运算时间是根据嵌套深度和循环次数呈指数增长。
这是一个简单的理解方式。
在同一机器上,CPU时钟是恒定的(理论),每条汇编指令执行的时间是一样的,所以从某种角度上看,运算时间和基本代码运行次数是一个概念,但它们不能直观的表现出一个算法的复杂度, 所以准确来说,这两个说法都不正确。
我认为准确的说应该是:一段代码的复杂度是该段代码的指令数和运行后的执行指令总数之间的一个函数,这个函数可以是常量的、线性的、指数的......
2009-08-26 23:59
wanglili18
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2009-4-24
收藏
得分:0 
谢谢了~
2009-09-10 21:49
快速回复:算法时间复杂度
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017583 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved