快速排序
使用递归的思想,将需要排序的数组进行分解,直到满足基线条件。
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]))
浙公网安备 33010602011771号