python 快速排序的實現
阿新 • • 發佈:2018-07-20
元素 tle 過程 第一個 strong 列表 return def pri
快速排序的基本思想:先隨便在無序列表中找一個元素,以這個元素為基準,其他所有元素都跟該元素比,比該元素小的成為一個子序列,比該元素大的成為另一個子序列,接著重復此過程,最終達到排序效果。我們也用遞歸的方式來實現。
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
python 快速排序的實現