下列排序算法中时间复杂度不受数据初始状态影响,恒为O(n2)的是A、堆排序B、起泡排序C、直接选择排

题目

下列排序算法中时间复杂度不受数据初始状态影响,恒为O(n2)的是

A、堆排序

B、起泡排序

C、直接选择排序

D、快速排序

如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

下列排序方法中,排序所花费时间不受数据初始排列特性影响的算法是______。

A.直接插入排序

B.冒泡排序

C.直接选择排序

D.快速排序


正确答案:D
解析:不同的方法各有优缺点,可根据需要运用到不同的场合。在选取排序算法时需要考虑以下因素:待排序的记录个数n、记录本身的大小、关键字的分布情况、对排序稳定性的要求、语言工具的条件及辅助空间的大小。依据这些因素可得以下结论:
  .若待排序的记录数目n较小时,可采用插入排序和选择排序;
  .若待排序记录按关键字基本有序,则宜采用直接插入排序或冒泡排序;
  .当n很大且关键字的位数较少时,采用链式基数排序较好;
  .若n较大,则应采用时间复杂度为O(nlogn)的排序方法——快速排序、堆排序、归并排序。

第2题:

时间复杂度为O(n*n)的排序方法有()

A、直接插入排序

B、简单选择排序

C、快速排序

D、堆排序


参考答案:AB

第3题:

下列排序方法中,在最坏情况下算法的时间复杂度为 O(n^2)的有________。

A、堆排序

B、快速排序

C、希尔排序

D、冒泡排序


正确答案:BCD

第4题:

比较直接插入排序、起泡排序、简单选择排序、快速排序、堆排序、2一路归并排序和基数排序的算法性能,并填写下表:

A.O(n2)

B.O(n)

C.O(1)

D.O(nlogn)

E.O(dn)


正确答案:A
解析:1.按平均的时间性能来分,有3类排序方法:1)时间复杂度为O(niogn)的方法有:快速排序、堆排序和归并排序。其中快速排序目前被认为是最快的一种排序方法,后两者之比较,在n值较大的情况下,归并排序较堆排序更快。2)时间复杂度为O(n2)的有:插入排序、起泡排序和选择排序。其中以插入排序为最常用,特别是对于已按关键字基本有序排列的记录序列尤为如此,选择排序过程中记录移动次数最少。3)时间复杂度为O(n)的排序方法只有基数排序一种。●当待排记录序列按关键字顺序有序时,插入排序和起泡排序能达到O(n)的时间复杂度;而对于快速排序而言,这是最不好的情况,此时的时间性能蜕化为O(n2),因此应尽量避免。●选择排序、堆排序和归并排序的时间性能不随记录序列中关键字的分布而改变。●以上对排序的时间复杂度的讨论主要考虑排序过程中所需进行的关键字之间的比较次数。当待排序记录中其他各数据项比关键字占有更大的数据量时,还应考虑到排序过程中移动记录的操作时间,有时这种操作的时间在整个排序过程中占的比例更大,从这个观点考虑,简单排序的3种排序方法中起泡排序效率最低。2.按排序过程中所需的辅助空间大小来分。1)所有的简单排序方法(包括;插入、起泡和选择排序)和堆排序的空间复杂度均为O(1)。2)快速排序为O(nlogn),为递归程序执行过程中栈所需的辅助空间。3)归并排序和基数排序所需辅助空间最多,其空间复杂度为O(n)。

第5题:

下列排序方法中,最坏排序时间不是O(n2)的是

A.快速排序

B.堆排序

C.起泡排序

D.简单选择排序


正确答案:B
解析:快速排序、起泡排序、简单选择排序的最坏排序时间是O(n2) ,故 A),C),D)选项正确;堆排序最坏排序时间是O(nlog2n),故B)选项错

第6题:

在下列排序算法中,哪一个算法的时间复杂度与初始排序无关()。

A、直接插入排序

B、冒泡排序

C、快速排序

D、直接选择排序


参考答案:D

第7题:

下列方法中,()算法的时间复杂度为O(n²)。

A.堆排序

B.希尔排序

C.快速排序

D.直接插入排序


参考答案:D

第8题:

在原始序列已经有序(升序或降序)的情况下,(60)算法的时间复杂度为O(n2)。

A.堆排序

B.插入排序

C.快速排序

D.归并排序


正确答案:C
解析:无论原始序列中的元素如何排列,归并排序和堆排序算法的时间复杂度都是 O(nlgn)。快速排序算法处理的最好情况指每次都是将待排序列划分为均匀的两部分,此时算法时间复杂度是O(nlgn)。在原始序列已经有序(升序或降序)的情况下,快速排序算法的时间复杂度反而为O(n2)。插入排序是将一个新元素插入已经排列好的序列中。如果在数据已经是升序的情况下,新元素只需插入到序列尾部,这就是插入排序的最好情况,此时计算时间为O(n)。

第9题:

下列排序算法中,时间复杂度不受数据初始化状态影响,恒为0(log2n)的是()。

A.堆排序

B.冒泡排序

C.直接选择排序

D.快速排序


正确答案:D

第10题:

直接选择排序的平均时间复杂度为(17)。最好情况下时间复杂度为O(n)的排序算法是(18)。在最好和最花情况下的时间复杂度均为O(nlogn)且稳定的排序方法是(19)。

A.O(n)

B.O(nlogn)

C.O(n2)

D.O(logn)


正确答案:C

更多相关问题