比较直接插入排序、起泡排序、简单选择排序、快速排序、堆排序、2一路归并排序和基数排序的算法性能,并填写下表:A.O(n2)B.O(n)C.O(1)D.O(nlogn)E.O(dn)

题目

比较直接插入排序、起泡排序、简单选择排序、快速排序、堆排序、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)。
更多“ 比较直接插入排序、起泡排序、简单选择排序、快速排序、堆排序、2一路归并排序和基数排序的算法性能,并填写下表:A.O(n2)B.O(n)C.O(1)D.O(nlogn)E.O(dn) ”相关问题
  • 第1题:

    在直接插入排序、希尔排序、简单选择排序、快速排序、堆排序和归并排序中,平均比较次数最少的排序方法是


    错误

  • 第2题:

    堆排序的时间复杂度是O()。

    A.O(n)

    B.O(2n)

    C.O(n2)

    D.O(nlogn)


    O ( nlogn )

  • 第3题:

    二路归并排序算法的时间复杂度为()

    A.O(logn)

    B.O(nlogn)

    C.O(n)

    D.O(1)


    O(nlog 2 n)

  • 第4题:

    快速排序在最坏情况下的时间复杂度是(),此时其退化成了()。

    A.O(n^2),冒泡排序

    B.O(n^2),简单选择排序

    C.O(n*log2(n)),冒泡排序

    D.O(n*log2(n)),归并排序


    O(n2); O(n2); O(n^2)

  • 第5题:

    下列内部排序算法中,在初始序列已基本有序(除去n个元素中的某k个元素后即呈有序,k<<n)的情况下,排序效率最高的算法是() A.快速排序 B.直接插入排序 C. 二路归并排序 D. 简单选择排序 E. 起泡排序 F. 堆排序

    A.直接插入排序

    B.快速排序

    C.起泡排序

    D.堆排序


    快速排序;直接插入排序;二路归并排序;简单选择排序;起泡排序;堆排 (1)其比较次数与序列初态无关的算法是( )。 (2)不稳定的排序算法是( )。 (3)在初始序列已基本有序(除去n个元素中的某k个元素后即呈有序,k (4)排序的平均时间复杂度为O( nlog₂n)的算法是为O(n²)的算法是( )。