首页 > 试题广场 >

下列排序算法中,初始化数组集的排序顺序对算法的性能无影响的是

[单选题]

下列排序算法中,初始化数组集的排序顺序对算法的性能无影响的是 ()

  • 插入排序
  • 选择排序
  • shell排序
  • 快速排序
常用排序算法的性能与待排数组的循序的关系作一个总结:

1)冒泡:无关;
2)选择:无关;
3)插入:有关,有序程度越大,比较越少;
4)shell:有关,它的基本思想基于插入排序;
5)合并:有关,有序程度愈大,合并过程的比较次数越少;
6)堆排序:有关,有序程度越大,建立堆下沉操作越少;
7)快排序:有关,如果选择最后值作为阀值,那么有序程度越好,就越可能退化成O(n^2);
  无关,随机选择阀值,那么与排序程度无关。
编辑于 2017-06-26 15:33:44 回复(1)
初始排序的情况对四种排序方法都有影响。
A:插入排序:数组越有序,插入排序性能越好。因为比较次数少。
B:冒泡排序:初始排序对原始的冒泡排序没有影响,但对改进后的冒泡排序(即加标志位的冒泡排序)有很大影响。
C:堆排序:初始排序越有序,堆调整次数越少,性能也就越好。
D:快排:时间复杂度O(nlogn)~O(n^2),性能的变化就是由初始排序决定的。
发表于 2017-02-20 09:45:38 回复(0)


同一套题目中的另一题



请鉴别
发表于 2017-04-29 15:23:27 回复(5)
我不知道是什么答案,我只知道,堆排序的时间复杂度,平均情况,最好情况,最坏情况都为nlogn
发表于 2017-08-07 21:33:34 回复(0)
有没有关系,大家看表中的,最差最好,平均情况是不是时间复杂度都一样就可以了。。我是这么理解的。
发表于 2017-10-22 17:43:19 回复(0)
这题很没意思,算法只是个大概,究竟怎么实现还是有差别的,改进了的冒泡排序就不算了?
发表于 2017-08-15 11:27:07 回复(0)
答案到底是啥呢
发表于 2017-06-03 08:05:40 回复(0)
选c吧....  堆排序影响最小吧
发表于 2017-04-25 20:13:56 回复(0)
B,传统的冒泡是O(N^2)
发表于 2017-01-17 16:11:25 回复(0)
这题真没意思,改进后的冒泡排序就不是冒泡排序了?
发表于 2016-12-18 16:54:42 回复(0)
对改进的冒泡排序是有很大影响的,堆排序当然也会有一定影响,但不大
编辑于 2016-12-18 16:28:54 回复(0)