生成一个快速排序算法的pyhteon函数
以下是一个快速排序算法的 Python 函数:
def quick_sort(arr):
if len(arr) <= 1:
return arr
else:
pivot = arr[0]
left = []
right = []
for i in arr[1:]:
if i < pivot:
left.append(i)
else:
right.append(i)
return quick_sort(left) + [pivot] + quick_sort(right)
该算法的思路是选择一个基准值(pivot),将序列中小于基准值的元素放在左边,大于基准值的元素放在右边,然后对左右两个子序列分别递归进行快速排序,最后将左子序列、基准值、右子序列合并成一个有序序列。该算法的时间复杂度为 O(nlogn),空间复杂度为 O(n)。
原文地址: https://www.cveoy.top/t/topic/rhU 著作权归作者所有。请勿转载和采集!