下述python代码实现了快速排序算法,最差情况时间复杂度是( )。
def partition(arr, low, high):
i = low
j = high
pivot = arr[low]
while i < j:
while i < j and arr[j] >= pivot:
j -= 1
while i < j and arr[i] <= pivot:
i += 1
if i < j:
arr[i], arr[j] = arr[j], arr[i]
arr[i], arr[low] = arr[low], arr[i]
return i
def quick_sort(arr, low, high):
if low >= high:
return
p = partition(arr, low, high)
quick_sort(arr, low, p - 1)
quick_sort(arr, p + 1, high)
def quick_sort_wrapper(arr):
if not arr:
return []
quick_sort(arr, 0, len(arr) - 1)
return arr