写一个python快速排序算法程序
以下是一个Python快速排序算法程序:
def quicksort(arr):
if len(arr) <= 1:
return arr
else:
pivot = arr[0]
less = [x for x in arr[1:] if x <= pivot]
greater = [x for x in arr[1:] if x > pivot]
return quicksort(less) + [pivot] + quicksort(greater)
该程序使用递归实现快速排序算法。首先,它检查数组是否只有一个元素或没有元素。如果是这样,它将直接返回该数组。否则,它将选择第一个元素作为枢轴,并将数组分成两个子数组:一个包含小于或等于枢轴的元素,另一个包含大于枢轴的元素。然后,它递归地调用自己对这两个子数组进行排序,并将它们连接起来以形成排序后的数组。
原文地址: http://www.cveoy.top/t/topic/fXc 著作权归作者所有。请勿转载和采集!