算法图解的快速排序

来源:互联网 发布:淘宝达人怎么介绍自己 编辑:程序博客网 时间:2024/06/10 09:02
def quicksort(array):            if len(array)<2:                        return array            else:                        pivot=array[0]                        less=[i for i in array[1:] if i<=pivot]                        greater=[i for i in array[1:] if i>pivot]                        return quicksort(less)+[pivot]+quicksort(greater)

传入一个集合,如果长度为2就返回集合

如果长度大于2 ,就将第一个值变为基准条件

如果剩下的值大于基准条件的值,就将这些值存入一个新的集合(greater)

如果剩下的值小于基准条件的值,就将这些值存入一个新的集合(less)

然后递归排序。

原创粉丝点击