157. 下列内部排序算法中: A.快速排序 B.直接插入排序 C.二路归并排序 D.简单选择排序 E.起泡排序下列内部排序算法中: A.快速排序 B.直接插入排序 C.二路归并排序 D.简单选

来源:学生作业学帮网 编辑:学帮网 时间:2024/05/07 03:41:28

157. 下列内部排序算法中: A.快速排序 B.直接插入排序 C.二路归并排序 D.简单选择排序 E.起泡排序
下列内部排序算法中:
A.快速排序 B.直接插入排序 C.二路归并排序 D.简单选择排序 E.起泡排序 F.堆排序
① 其比较次数与序列初态无关的算法是(D,C );
求详细解释啊!

你这答案不对啊.

方式: 平均 最坏 最好
插入 n^2 n^2 n
希尔 n^1.3 / /
冒泡 n^2 n^2 n
快速 nlogn n^2 nlogn
选择 n^2 n^2 n^2
堆排 nlogn nlogn nlogn
归并 nlogn nlogn nlogn
基数 d(n+r) d(n+r) d(n+r)

之所以有最好最坏就是因为受到了初始状态的影响,所以三个值全一样的就是不受影响的,几个外排你无视好了,但F堆排也肯定是答案之一.
最慢的选择排序就不说了,你自己看下算法就明白了.

归并排序是将数组不断的二分直至子数组长度为1,然后再开始合并,因此它的时间复杂度只与数组长度相关,而每一层的比较次数都是O(n)级别,共logn层,所以无论如何都是O(nlogn)

堆排则是通过建立特殊的数据结构,将每一次的比较结果都通过最大/小堆记录了下来,你可以理解为算法比较过a与b的大小之后,直道结束,它都知道a与b的大小了,而不需要再次比较,因此在堆建立完之后,要找出一个数的大小序号所需要的计算量都是O(logn)级别,对于共n个数的排序,一共就是O(nlogn),跟归并相比虽然都是n乘logn,但是意义是不同的.

然后就是你这个题有问题,不能说比较次数,是比较次数的量级,也就是时间复杂度表达式中最高次项及其系数是相同的,而无论是哪一种排序方式,准确地比较次数或多或少都会受到初始状态的影响

157. 下列内部排序算法中: A.快速排序 B.直接插入排序 C.二路归并排序 D.简单选择排序 E.起泡排序下列内部排序算法中: A.快速排序 B.直接插入排序 C.二路归并排序 D.简单选 下列排序算法中不稳定的是( ).A.快速排序 B.归并排序 C.冒泡排序 D.直接插入排序 下列各个排序算法中,要求辅助空间最大的是 A.希尔排序法 B.快速排序法 C.堆排序法 D.二路归并排序法 数据结构排序问题(在线等)5、下列排序算法中,( ) 算法可能会出现下面情况:初始数据有序时,花费的时间反而最多.(A)堆排序 (B)冒泡排序 (C)快速排序 (D)SHELL排序 数据序列(12,13,6,5,8,7,20,3,9)只能是下列排序算法中的哪个1趟排序后的结果.A.插入排序 B.选择排序 C.冒泡排序 D.堆排序 下列关于排序的说法正确的是( ).A.插入排序和冒泡排序都是稳定的排序算法.B.选择排序的平均时间复杂度为O(n2).C.选择排序、快速排序、希尔排序、堆排序都是不稳定的排序算法.D.希尔排 在最坏情况下,下列排序方法中时间复杂度最小的是(D) A)冒泡排序 B)快速排序 C)插入排序 D)堆排序 在下列几种排序方法中,要求买内存量最大的是() A插入排序B选择排序C快速排序D归并排序 一般来说,最快的排序算法是()A:归并排序 B:快速排序 C:插入排序 D:希尔排序 下列四种排序中( )的空间复杂度最大.(A) 快速排序 (B) 冒泡排序 (C) 希尔排序 (D) 堆 下列排序方法中,最坏情况下比较次数最少的是 A)冒泡排序B)简单选择排序C)直接插入排序D)堆排序E快速排序 (54) 在下列几种排序方法中,要求内存量最大的是______. A. 插入排序 B. 选择排序 C. 快速排序 D. 归并排(54) 在下列几种排序方法中,要求内存量最大的是______.A. 插入排序B. 选择排序C. 快速排序D. 什么 情况下用快速排序算法 如何理解快速排序算法的思想? 数据结构排序算法中元素的平均移动次数如何求比如快速排序和归并排序(二路)算法的平均移动次数 a[p:q-1]是什么意思在快速排序中 对于长度为n 的线性表,在最坏情况下,下列各排序法所对应的比较次数中正确的是A)冒泡排序n/2B)冒泡排序为nC)快速排序为n D)快速排序为n(n-1)/2为什么? 数据排序算法的稳定与不稳定有些排序算法是稳定排序,如冒泡排序;有些排序算法是不稳定排序,如快速排序.如何理解排序算法的稳定与不稳定?