11 快排

优质
小牛编辑
141浏览
2023-12-01
#coding:utf-8
def quicksort(list):
  if len(list)<2:
    return list
  else:
    midpivot = list[0]
    lessbeforemidpivot = [i for i in list[1:] if i<=midpivot]
    biggerafterpivot = [i for i in list[1:] if i > midpivot]
    finallylist = quicksort(lessbeforemidpivot)+[midpivot]+quicksort(biggerafterpivot)
    return finallylist

print quicksort([2,4,6,7,1,2,5])

更多排序问题可见:数据结构与算法-排序篇-Python描述