社区
数据结构与算法
帖子详情
急!急!时间复杂度
jyy243270803
2009-12-12 05:09:41
这两天看时间复杂度,很是头疼。
1
.如果一个排序算法题目要我们求时间复杂度,到底是求最坏情况下的,还是平均的(我个人理解的时间复杂度只是数量级的问题,这两个的结果应该是一样的。不知道对不对,求教高手)
2.折半插入排序仅减少关键字比较次数,而记录的移动次数不变,所以折半插入排序和直接插入一样,时间复杂度为O(n2)……以上是书上原话。
我的问题是,时间复杂度是比较次数+移动次数,还是两者间大的那个,为什么?
...全文
139
7
打赏
收藏
急!急!时间复杂度
这两天看时间复杂度,很是头疼。 1.如果一个排序算法题目要我们求时间复杂度,到底是求最坏情况下的,还是平均的(我个人理解的时间复杂度只是数量级的问题,这两个的结果应该是一样的。不知道对不对,求教高手) 2.折半插入排序仅减少关键字比较次数,而记录的移动次数不变,所以折半插入排序和直接插入一样,时间复杂度为O(n2)……以上是书上原话。我的问题是,时间复杂度是比较次数+移动次数,还是两者间大的那个,为什么?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
jingyinggong
2009-12-14
打赏
举报
回复
顶起来。
PeacefulBY
2009-12-13
打赏
举报
回复
1、平均情况和最坏情况数量级有时会有不同,一般考虑平均意义下的,因为程序实际运行的时间还是取决于平均时间复杂度;除非最坏情况比较普遍,不过如果是这样的话一般平均时间复杂度也就等于最坏时间复杂度了
2、取更大那个,另一个和这个相比,只要差一个数量级,随着N的增大就可以忽略不计了
qiuzhenguang
2009-12-13
打赏
举报
回复
要看最坏情况出现得多,还是平均情况出现得多。比如快速排序,最坏情况复杂度为O(n2),出现得极少;所以更为关注它的平均情况复杂度O(n*lgn)
FancyMouse
2009-12-13
打赏
举报
回复
>如果一个排序算法题目要我们求时间复杂度,到底是求最坏情况下的,还是平均的
朴素快排,平均O(nlogn),最坏O(n^2)。一般情况下研究复杂度都是指worst-case。
>我的问题是,时间复杂度是比较次数+移动次数,还是两者间大的那个,为什么?
O(f+g)=max{O(f),O(g)}(用f+g<=2*max(f,g)证明)
wenzheng38
2009-12-12
打赏
举报
回复
时间复杂度是两者的数量和
wenzheng38
2009-12-12
打赏
举报
回复
算法一般情况下考虑的是平均时间复杂度,但也考虑最坏的情况
tian_zhi_dao
2009-12-12
打赏
举报
回复
虽然减少了比较次数 但是它的数量级还是n^2
所以复杂度为o(n2)
02-MySQL(单表查询)
02-MySQL(单表查询)
大学生校园兼职微信小程序pf(文档+源码)_kaic.zip
计算机毕业设计
ssm留学生交流互动论坛网站(文档+源码)_kaic.zip
计算机毕业设计
数据结构与算法
33,028
社区成员
35,337
社区内容
发帖
与我相关
我的任务
数据结构与算法
数据结构与算法相关内容讨论专区
复制链接
扫一扫
分享
社区描述
数据结构与算法相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章