快速排序

def quick_sort(data):
    if len(data) >= 2:
        mid = data[0]    # 选取第一个值为基准值
        left, right =[], []   # 定义基准值左右两侧的列表
        data.remove(mid)   # 原始数据中删除基准值
        for num in data:
            if num >= mid:   # 大于基准值的放右边
                right.append(num)
            else:
                left.append(num)   # 小于基准值的放左边
        return quick_sort(left) + [mid] + quick_sort(right)
    else:
        return data
array = [2,3,5,7,1,4,6,15,5,2,7,9,10,15,9,17,12]
print(quick_sort(array))

 

posted @ 2019-10-08 22:11  我叫郑小白  阅读(122)  评论(0编辑  收藏  举报