def Partition(lst,low,high):
pivot = lst[low]
while low<high:
while low<high and lst[high]>=pivot:
high -= 1
lst[low] = lst[high]
while low<high and lst[low]<=pivot:
low += 1
lst[high] = lst[low]
lst[low] = pivot
return low
def QuickSort(lst,low,high):
if low<high:
pivot = Partition(lst,low,high)
QuickSort(lst,low,pivot-1)
QuickSort(lst,pivot+1,high)
if __name__ == '__main__':
lst = [5,4,3,2,1]
QuickSort(lst,0,4)
print(lst)
python实现快速排序(QuickSort)
最新推荐文章于 2024-05-14 10:51:55 发布