您有一个包含 n 个元素的数组。假设您通过始终选择数组的中心元素作为枢轴来实现快速排序。那么最坏情况性能的最严格的上限是
(A) O(n 2 )
(B) O(nLogn)
(C) Theta(nLogn)
(D) O(n 3 )答案:(一)
说明:对于任何输入,都有一些最坏情况为O(n 2 ) 的排列。在某些情况下,选择中间元素可以最大限度地减少遇到O(n 2 )的机会,但在最坏的情况下,它可以达到O(n 2 )。无论我们将哪个元素作为 Pivot,无论是第一个还是中间,最坏的情况都是O(n 2 ),因为 Pivot 是固定的。虽然选择随机枢轴可以最大限度地减少遇到最坏情况的机会,即O(n 2 )。
请参阅有关快速排序的这篇文章。
这个问题的测验