猿问
如下是关于比较排序的最小比较次数的问题?
为什么用任何一个基于“比较”的排序算法对 5 个元素进行排序在最坏情况下所需的比较次数至少为 7 次?
慕标5832272
浏览 162
回答 1
1回答
慕神8447489
先上结论:基于比较的排序每次进行关键字比较的排序的严格时间复杂度为Omega(nlog2(n))原理在于:基于比较能获得的信息有限,根据信息熵每次比较能获得两个数之间的关系而对于n个元素的排序,共有n!种排列故最坏情况需要的比较次数为log2(n!)——————另一类原理:n个数的排列有n!种,一次比较能从候选中排除一半,最坏情况下需要log2(n!)次才能得到最终可能的结果对于5个元素,共5!=120种排列需要的比较次数为 log2(120) 约等于 6.9,向上取整得到7
0
0
0
随时随地看视频
慕课网APP
相关分类
算法
正则表达式,要怎麽从下一个字开始匹配,而不是从下一个词?
0 回答
scrapy 解析js代码或正则?
2 回答
我要回答