Python-快速排序

选择一个基准值,使用递归的方式将排序分为三个部分:小于基准值部分,基准值,大于基准值部分。最后将三个部分组合在一起即可。

def quicksort(arr):
if len(arr) < 2:
return arr
else:
pivor = arr[0]
less = [i for i in arr[1:] if i <= pivor]
greater = [i for i in arr[1:] if i > pivor]
return quicksort(less) + [pivor] + quicksort(greater)

print(quicksort([4,3,6,8,10]))
posted @ 2019-09-22 14:07  M_派森  阅读(213)  评论(0编辑  收藏  举报