下列排序算法中,时间复杂度为O(nlog2n)且占用额外空间最少的是(18)。A.堆排序B.冒泡排序C.快速排

题目

下列排序算法中,时间复杂度为O(nlog2n)且占用额外空间最少的是(18)。

A.堆排序

B.冒泡排序

C.快速排序

D.SHELL排序

参考答案和解析
正确答案:A
解析:其他都不符合条件。
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

最好和最坏时间复杂度均为O(nlog2n)且稳定的排序方法是()。

A.快速排序

B.堆排序

C.归并排序

D.基数排序


参考答案:C

第2题:

在其最好情况下的算法时间复杂度为O(n)。

A.插入排序

B.归并排序

C.快速排序

D.堆排序


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

第3题:

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

A、堆排序

B、快速排序

C、希尔排序

D、冒泡排序


正确答案:BCD

第4题:

下列排序方法中,最坏情况下时间复杂度最小的是()。

A.冒泡排序

B.快速排序

C.堆排序

D.直接插入排序


正确答案:C

第5题:

下列排序方法中,最坏情况下时间复杂度最低的是()。

A.冒泡排序

B.快速排序

C.希尔排序

D.堆排序


正确答案:D

第6题:

在最坏情况下,下列排序方法中时间复杂度最小的是______。

A.冒泡排序

B.快速排序

C.插入排序

D.堆排序


正确答案:D
解析:堆排序的方法对于规模较小的线性表并不适合,但对于较大规模的线性表来说是很有效的。在最坏情况下,堆排序需要比较的次数为O(nlog2n)。堆排序时间复杂度最小。

第7题:

在下列排序方法中,平均时间性能为O(nlog2n)且空间性能最好的是( )。

A.快速排序

B.堆排序

C.归并排序

D.基数排序


正确答案:B
解析:堆排序先把序列看成一棵大根堆或小根堆,摘取最大或最小元素后再建成新的根堆,再排序。因此它的平均时间性能为O(nlog2n)且空间性能最好。

第8题:

时间复杂性为O(nlog2n)且空间复杂性为O(1)的排序方法是()。

A.归并排序

B.堆排序

C.快速排序

D.锦标赛排序


参考答案:B

第9题:

下列排序方法中,最坏情况下时间复杂度(即比较次数)低于o(n2)的是()。

A.堆排序

B.快速排序

C.简单插入排序

D.冒泡排序


正确答案:A

第10题:

关于排序算法的以下说法,错误的是()

A.归并排序的平均时间复杂度O(nlogn),最坏时间复杂度O(n^2)

B.堆排序平均时间复杂度O(nlogn),最坏时间复杂度O(nlogn)

C.冒泡排序平均时间复杂度O(n^2),最坏时间复杂度O(n^2)

D.快速排序的平均时间复杂度O(nlogn),最坏时间复杂度O(n^2)


正确答案:A