Python排序算法-快速排序

>>># 原理,通过一趟扫描将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列
>>> def qsort(seq):
...     if seq==[]:
...         return []
...     else:
...         pivot=seq[0]
...         lesser=qsort([x for x in seq[1:] if x ...         greater=qsort([x for x in seq[1:] if x>=pivot])
...         return lesser+[pivot]+greater
...
>>> if __name__=='__main__':
...     seq=[5,6,78,9,0,-1,2,3,-65,12]
...     print(qsort(seq))
...
[-65, -1, 0, 2, 3, 5, 6, 9, 12, 78]
>>>

你可能感兴趣的:(快排序,python,数据算法类)