选择题
11.
下列排序方法中,最坏情况下时间复杂度(即比较次数)低于O(n
2
)的是______。
A、
快速排序
B、
希尔排序
C、
简单插入排序
D、
冒泡排序
【正确答案】
B
【答案解析】
对长度为n的线性表排序,下表为常用排序方法最坏情况下的时间复杂度。
方法
最坏情况时间
冒泡排序
O(n
2
)
简单插入排序
O(n
2
)
简单选择排序
O(n
2
)
快速排序
O(n
2
)
堆排序
O(nlog
2
n)
上表中未包括希尔排序,因为希尔排序的时间效率与所取的增量序列有关,如果增量序列为:d
1
=n/2,d
i+1
=di/2,在最坏情况下,希尔排序所需要的比较次数为O(n
1.5
)。最坏情况下,时间复杂度低予O(n
2
)的排序算法有堆排序和希尔排序。故B选项正确。
提交答案
关闭