def partation(li,left,right):
tmp = li[left]
while left < right:
while left < right and li[right] >= tmp: # 右边找比tmp小的数
right -= 1
li[left] = li[right]
while left < right and li[left] <= tmp: # 左边找比tmp大的数
left += 1
li[right] = li[left]
li[left] = tmp
return left
def quick_sort(li,left,right):
if left < right:
mid = partation(li,left,right)
quick_sort(li,left,mid-1)
quick_sort(li,mid+1,right)
def main():
li = [3,2,7,4,8,9,6,5,1]
quick_sort(li,0,len(li)-1)
print(li)
if __name__ == '__main__':
main()