快速排序的Python实现

def quicksort(li):
    smaller = []
    bigger = []
    if len(li) < 1:
        return li
    k = li.pop()
    for i in li:
        #每一轮递归把数据分为两部门 一部分小于k 一部分大于k
        if i > k:
            bigger.append(i)
        else: 
            smaller.append(i)
    return quicksort(smaller) + [k] + quicksort(bigger)


li = [5,4,3,6,7,2,9,1,2,9]

print(quicksort(li))
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容