快速排序在平均情况下的时间复杂度为(),在最坏情况下的时间复杂度为()。

题目
填空题
快速排序在平均情况下的时间复杂度为(),在最坏情况下的时间复杂度为()。
参考答案和解析
正确答案: O(nlog2n),O(n2
解析: 暂无解析
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

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

A.冒泡排序

B.快速排序

C.希尔排序

D.堆排序


正确答案:D

第2题:

以下关于快速排序算法的描述中,错误的是( )。在快速排序过程中,需要设立基准元素并划分序列来进行排序。若序列由元素{12,25,30,45,52,67,85}构成,则初始排列为( )时,排序效率最高(令序列的第一个元素为基准元素)。

A.快速排序算法是不稳定的排序算法

B.快速排序算法在最坏情况下的时间复杂度为0(nlgn)

C.快速排序算法是一种分治算法

D.当输入数据基本有序时,快速排序算法具有最坏情况下的时间复杂度


正确答案:B
解析:最坏情况是每次划分选取的基准都是当前无序区中关键字最小(或最大)的记录,划分的结果是基准左边的子区间为空(或右边的子区间为空),而划分所得的另一个非空的子区间中记录数目,仅仅比划分前的无序区中记录个数减少一个。因此,快速排序必须做n-1次划分,第i次划分开始时区间长度为n-i+1,所需的比较次数为n-i(1≤i≤n-1),故总的比较次数达到最大值:cmax=n(n-1)/2=O(2)在最好情况下,每次划分所取的基准都是当前无序区的“中值”记录,划分的结果是基准的左、右两个无序子区间的长度大致相等。总的关键字比较次数:O(nlgn)

第3题:

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

A、堆排序

B、快速排序

C、希尔排序

D、冒泡排序


正确答案:BCD

第4题:

在最好和最坏情况下的时间复杂度均为O(nlogn)且稳定的排序方法是(51)。

A.基数排序

B.快速排序

C.堆排序

D.归并排序


正确答案:D
解析:基数排序最坏的时间复杂度均为O(d(n+rd));快速排序最好和最坏情况下F的时间复杂度分别为O(n2)和O(nlogn)且不稳定;堆排序在最好和最坏情况下的时间复杂度均为O(nlogn)但不稳定;归并排序是在最好和最坏情况下的时间复杂度均为O(nlogn)且稳定的排序方法。

第5题:

对n个元素的数组进行(),其平均时间复杂度和最坏情况下都为O(nlogn)。

A.希尔排序

B.快速排序

C.堆排序

D.选择排序


正确答案:C

第6题:

在最坏情况下()。

A.快速排序的时间复杂度比冒泡排序的时间复杂度要小

B.快速排序的时间复杂度比希尔排序的时间复杂度要小

C.希尔排序的时间复杂度比直接插入排序的时间复杂度要小

D.快速排序的时间复杂度与希尔排序的时间复杂度是一样的


正确答案:C

第7题:

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

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

第8题:

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

A.冒泡排序

B.快速排序

C.插入排序

D.堆排序


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

第9题:

在最坏情况下,冒泡排序的时间复杂度为( )。


正确答案:
n(n-1)/2#n*(n-1)/2#O(n(n-1)/2)#O(n*(n-1)/2)

第10题:

对于n个记录的集合进行快速排序,在最坏的情况下时间复杂度是O(n2)()

此题为判断题(对,错)。


参考答案:错