快速排序的最坏情况复杂度是多少?

时间:2014-05-21 13:33:56

标签: time-complexity quicksort

假设始终选择第一个元素作为枢轴元素,请您详细说明最坏情况发生的位置及其时间复杂度

1 个答案:

答案 0 :(得分:5)

在快速排序中,如果选择第一个元素作为分区的枢轴元素。那么 快速排序表现出最差的铸造复杂性 - 在这种情况下为O(n ^ 2)。
更确切地说,当要排序的输入按降序或递增顺序(如果第一个elemnet是枢轴元素)时,观察到快速排序的最坏情况复杂度为O(n ^ 2)。

这种最坏情况性能的原因是,在分区后,一个分区的大小为1,另一个分区的大小为n-1 因此,快速排序'n'元素的时间T(n)=
分割'n'元素所花费的时间O(n)+快速排序'n-1'元素的时间T(n-1)
因此,T(n)= T(n-1)+ O(n)
=> T(n)= O(n ^ 2)