python 快速排序的实现

快速排序的基本思想:先随便在无序列表中找一个元素,以这个元素为基准,其他所有元素都跟该元素比,比该元素小的成为一个子序列,比该元素大的成为另一个子序列,接着重复此过程,最终达到排序效果。我们也用递归的方式来实现。

def quicksort(list):
if len(list) < 2:
return list

little = []
large = []
# 这里取出列表第一个元素
middle = list.pop(0)

for item in list:
if item < middle:
little.append(item)
else:
large.append(item)

return quicksort(little)+[middle]+quicksort(large)


print(quicksort([1,4,3,2,1]))

  [1, 1, 2, 3, 4]

  Process finished with exit code 0



  

猜你喜欢

转载自www.cnblogs.com/mumei/p/9343452.html