defquicksort(arr):iflen(arr)<2: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)
1.快速排序函数做了什么事?
1.1 定义了基线条件,保证了数组长度为空或为1时直接返回列表本身;
iflen(arr)<2:return arr
1.2 在数组长度为空时:定义了基准值;根据基准值筛选出了两个列表less和greater;
pivot = arr[0]
less =[x for x in arr[1:]if x <= pivot]
greater =[x for x in arr[1:]if x > pivot]
快速排序源码def quicksort(arr): if len(arr) < 2: 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] + qu