1. 从列表中,随便找一个基准元素,将比基准元素大的值,放到它的右边,比它小的元素,放到它的左边
2. 分别对两个小列表进行快速排序
3. 重复1-2步,直到小列表中最多一个元素的时候,将左右小列表与基准元素组成的列表组合起来,并返回
def sort(l):
if len(l)<=1:
return l
return sort([i for i in l if i < l[0]])+[i for i in l if i == l[0]]+sort([i for i in l if i > l[0]])
if __name__ == ‘__main__‘:
import random
l=list(range(10))
random.shuffle(l)
print(l)
print(sort(l))
原文:https://www.cnblogs.com/zhu-lin-11211/p/12940123.html