工学

单选题在对n个元素进行快速排序的过程中,平均情况下的空间复杂性为()A O(1)B O(n2)C O(log2n)D O(n log2n)

题目
单选题
在对n个元素进行快速排序的过程中,平均情况下的空间复杂性为()
A

O(1)

B

O(n2

C

O(log2n)

D

O(n log2n)

如果没有搜索结果,请直接 联系老师 获取答案。
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

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

A.希尔排序

B.快速排序

C.堆排序

D.选择排序


正确答案:C

第2题:

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

A.希尔排序

B.快速排序

C.堆排序

D.选择排序


正确答案:C
解析:本题考查排序算法。
  希尔排序的时间复杂度约为O(n1.4)。
  快速排序在最坏情况下的时间复杂度为O(n2)。
  选择排序的时间复杂度为O(n2)。
  无论在什么情况下,堆排序的时间复杂度都是O(nlogn)。

第3题:

在对n个元素的序列进行排序时,堆排序所需要的附加存储空间是()

A、O(log2n)

B、O(1)

C、O(n)

D、O(nlog2n)


参考答案:B

第4题:

在对n个元素进行起泡排序的过程中,最好情况下的时间复杂度为:()

  • A、.O(n3
  • B、O(n2
  • C、O(n)
  • D、O(1)

正确答案:C

第5题:

对n个元素进行快速排序时,最坏情况下的时间复杂度为______。

A.

B.

C.

D.


正确答案:D
解析:各种排序算法性能比较如下:

第6题:

在对n个元素进行快速排序的过程中,最坏情况下需要进行______趟。

A.n

B. n-1

C. n/2

D. log2(下标)n


正确答案:D
解析: 参见快速排序的过程。快速排序法也是一种互换类的排序方法,但由于它比冒泡排序法的速度快,因此称为快速排序法。快速排序法的关键是对线性表进行分割,以及对各分割出的子表再进行分割。

第7题:

假设要排序包含n个元素的数组,请给出在各种不同的划分情况下,快速排序的时间复杂度(用 O记号)。最佳情况为(4),平均情况为(5),最坏情况为(6)。

(2)假设要排序的n个元素都具有相同值时,快速排序的运行时间复杂度属于哪种情况? (7)。 (最佳、平均、最坏)


正确答案:这是一道考查快速排序算法时间复杂度的分析题。当每次能作均匀划分时算法为最佳情况此时时间复杂度可以通过计算递归式T(n)=2T(n/2)+O(n)得到时间复杂度为O(nlogn)。当每次为极端不均匀划分时即长度为n的数组划分后一个子数组为n-1一个为0算法为最坏情况此时时间复杂度可以通过计算递归式T(n)=T(n-1)+O(n)得到时间复杂度为O(n2)。 对于平均情况的分析较为复杂假设数组每次划分为9/10:1/10此时时间复杂度可以通过计算递归式 T(n)=T(9/10)+T(1/10)+O(n)得到时间复杂度为O(nlogn)因此在平均情况下快速排序仍然有较好的性能时间复杂度为O(nlogn)。 当所有的n个元素具有相同的值时可以认为数组已经有序此时每次都划分为长度为n-1和0的两个子数组属于最坏情况。
这是一道考查快速排序算法时间复杂度的分析题。当每次能作均匀划分时,算法为最佳情况,此时时间复杂度可以通过计算递归式T(n)=2T(n/2)+O(n),得到时间复杂度为O(nlogn)。当每次为极端不均匀划分时,即长度为n的数组划分后一个子数组为n-1,一个为0,算法为最坏情况,此时时间复杂度可以通过计算递归式T(n)=T(n-1)+O(n),得到时间复杂度为O(n2)。 对于平均情况的分析较为复杂,假设数组每次划分为9/10:1/10,此时时间复杂度可以通过计算递归式 T(n)=T(9/10)+T(1/10)+O(n),得到时间复杂度为O(nlogn),因此在平均情况下快速排序仍然有较好的性能,时间复杂度为O(nlogn)。 当所有的n个元素具有相同的值时,可以认为数组已经有序,此时每次都划分为长度为n-1和0的两个子数组,属于最坏情况。

第8题:

从n个结点的二叉排序树中查找一个元素,平均时间复杂性大致为()。


参考答案:O(log2n)

第9题:

对n个关键字的序列进行快速排序,平均情况下的空间复杂度为_______

A.O(1)

B.O(logn)

C.O(n)

D.O(nlogn)


正确答案:D

第10题:

在对n个元素进行冒泡排序的过程中,至少需要()趟完成。

  • A、1
  • B、n
  • C、n-1
  • D、n/2

正确答案:A

更多相关问题