首页 > 试题广场 >

下面的排序方法中,关键字比较次数与记录的初始排列无关的是?

[单选题]
下面的排序方法中,关键字比较次数与记录的初始排列无关的是______。
  • 希尔排序
  • 冒泡排序
  • 直接插入排序
  • 直接选择排序
发表于 2015-09-19 15:11:32 回复(1)
这个位置的冒泡排序应该是指,加入了是否有数据进行交换的判断,如果上次循环没有交换数组中的两个值则说明数组已经有序,直接退出冒泡排序过程。
发表于 2015-09-25 16:19:14 回复(3)
插入排序,冒泡排序和快速排序的排序趟数与序列的初始状态有关
堆排序和选择排序的排序次数与初始状态无关,即最好情况和最坏情况都一样
发表于 2015-09-19 10:53:43 回复(0)
元素的移动次数与关键字的初始排序无关的是:归并排序、基数排序
元素的比较次数与初始序列无关的是:选择排序、基数排序
算法的时间复杂度与初始序列无关的是:堆排序、归并排序、选择排序、基数排序
发表于 2020-04-17 11:13:58 回复(0)
题目不严谨,如果说不改良冒泡算法的话,这个题应该选冒泡,优化后的冒泡是跟是否有序有关。
发表于 2020-11-04 15:39:48 回复(0)
题目的另一种问法就是,下列哪个算法最好的时间复杂度和最坏的时间复杂度是一样的
编辑于 2020-04-09 18:21:14 回复(0)
直接选择排序均为O(n^2),空间O(1)
发表于 2022-11-20 21:26:12 回复(0)
无关的有:直接选择排序,堆排序,折半插入排序。。 
直接插入排序和初始排列有关
发表于 2017-07-20 09:51:44 回复(0)
如果初始排列基本有序,则对希尔排序而说,前几次的插入工作大为减少
冒泡排序和直接插入排序都和初始序列有关
发表于 2017-04-26 17:02:14 回复(0)
比较次数,循环次数(可以用时间复杂度来代替),交换次数,对算法效率的影响
发表于 2017-02-13 11:48:59 回复(0)
怎么前后还不一致呢,希尔排序到底受不受初始排列的影响啊????到底闹哪样???
发表于 2016-07-05 19:27:15 回复(0)
可以这样理解:选择排序,堆排序,归并排序最好、平均、最坏情况时间复杂度都一样,即无论什么情况时间复杂度都是不变的,所以这三种排序的时间复杂度与初始序列的顺序无关,而时间复杂度与关键字的比较次数有关。
编辑于 2016-04-22 14:56:05 回复(0)
题中说的比较次数,冒泡的时候不需要挨个比较(即使不交换位置)?冒泡这么多版本。。
发表于 2016-04-18 08:52:39 回复(1)

简单选择排序的比较次数与序列的初始排序无关,比较次数总是N (N - 1) / 2。

移动次数与序列的初始排序有关。当序列正序时,移动次数最少,为 0.

当序列反序时,移动次数最多,为3N (N - 1) /  2。

发表于 2015-09-24 09:56:37 回复(0)
选D,希尔排序其实就是优化的插入排序,我们知道,插入排序在混乱度越小的待排数组中使用效率越高所以希尔排序也跟关键字初始位置有关。
发表于 2015-09-19 23:30:36 回复(0)