首页 > 试题广场 >

平均速度最快的排序算法是?

[单选题]
平均速度最快的排序算法是?
  • Shell排序
  • 快速排序
  • 冒泡排序
  • 插入排序
shell排序的平均复杂度是O(nlogn)~O(n2),最好的情况O(n1.3),最坏的情况O(n2)
快速排序的平均复杂度是O(nlogn),           最好的情况O(nlogn),最坏的情况O(n2)
直接插入排序的平均复杂度是O(n2),         最好的情况O(n),      最坏的情况O(n2)
冒泡排序的平均复杂度是O(n2),                   最好的情况O(n),        最坏的情况O(n2)
发表于 2015-08-05 10:56:11 回复(0)
shell排序的时间复杂度依赖于步长的划分,大致在O(nlogn)-O(n2 ),快排的平均时间复杂度为O(nlogn),最坏的情况下是O(n2 ),冒泡和插入排序的时间复杂度都是O(n2 )。所以答案为B
发表于 2015-07-24 10:36:58 回复(0)

编辑于 2019-10-21 20:56:32 回复(0)
尼玛。。。shell是希尔排序啊。。。
发表于 2016-11-06 21:56:15 回复(0)
都叫“快速”排序了那肯定快啊
发表于 2018-04-28 12:42:21 回复(1)
楼下加那么多步长要求,怎么不说给数据加个基本有序呢?比较的一点公平性都没有。实验测试贴出来 shell的sed步长实际比堆都快 理论却慢
发表于 2018-01-06 14:50:16 回复(0)
shell排序平均时间复杂度依赖于步长的选择
发表于 2016-11-20 23:51:34 回复(0)
快速排序时平均性能最好的
发表于 2015-08-31 15:39:01 回复(0)
虽然Shell和快排平均时间都是nlogn,但是shell还是更快一些
发表于 2015-07-29 22:59:10 回复(0)
B
发表于 2014-10-14 15:09:05 回复(0)