def quick_sort(q, l, r):
# 边界条件
if l >= r:
return
i,j = l-1,r+1 # 双指针从两侧外开始
x = q[(l+r)//2] #任意数
while i[HTML_REMOVED]= x: #左侧应该永远小于给定常数
break
while True:
j -= 1
if q[j] <= x: #右侧应该永远小于给定常数
break
if i<j:
q[i],q[j] = q[j],q[i]
quick_sort(q,l,j) #递归左半边
quick_sort(q,j+1,r) #递归右半边