快速排序

使用递归的思想,将需要排序的数组进行分解,直到满足基线条件。

def quicksort(array):
#列表为空或者只有一个元素时是有序的
if len(array) < 2:
return array
else:
#设定基准值,即递归条件
pivot = array[0]
#生成由小于基准值元素组成的子列表
less = [i for i in array[1:] if i <= pivot]
#生成由大于基准值元素组成的子列表
greater = [i for i in array[1:] if i > pivot]
return quicksort(less) + [pivot] + quicksort(greater)


print(quicksort([10, 5, 2, 3]))
posted @ 2023-02-21 10:27  莫名丶  阅读(17)  评论(0)    收藏  举报