def qsort(data, l, r):
if l < r:
# 取左边的数作为分界点
tmp = data[l]
lt = l
rt = r
while lt < rt:
# 找右边比tmp小的数
while data[rt] >= tmp and rt > lt:
rt -= 1
data[lt] = data[rt]
# 找左边比tmp大的数
while data[lt] <= tmp and lt < rt:
lt += 1
data[rt] = data[lt]
data[lt] = tmp
qsort(data, l, lt-1)
qsort(data, lt+1, r)
else:
return