快速排序的思想:选取一个列表一个元素作为基准,小于列表的元素放在基准左边,大于基准的元素放在右边。
本例选择第一个元素为基准,递归终止条件为len(list)<=1
def qsort(L):
if len(L) <= 1:
return L
return qsort([lt for lt in L[1:] if lt <= L[0]]) + L[0:1] + qsort([gt for gt in L[1:] if gt > L[0]])
快速排序的思想:选取一个列表一个元素作为基准,小于列表的元素放在基准左边,大于基准的元素放在右边。
本例选择第一个元素为基准,递归终止条件为len(list)<=1
def qsort(L):
if len(L) <= 1:
return L
return qsort([lt for lt in L[1:] if lt <= L[0]]) + L[0:1] + qsort([gt for gt in L[1:] if gt > L[0]])