【发布时间】:2018-02-20 20:44:48
【问题描述】:
我正在尝试在 python 中实现快速排序。问题是如何在数组a 中增加/减少 i/j 的值。我知道我应该写 i=i+1 并且在 python 中没有像 i++ 这样的东西,但我不明白我应该以哪种方式这样做。
我是新手,这是我的代码。
def quicksort(a,lo,hi):
if(hi<=lo):
return
i = lo - 1
j = hi
v = a[hi]
while True:
while(a[++i] < v):
pass
while(v < a[--j]):
if(j==lo):
break
if(i>=j):
break
t = a[i]
a[i] = a[j]
a[j] = t
t = a[i]
a[i] = a[hi]
a[hi] = t
quicksort(a, lo, i - 1)
quicksort(a, i + 1, hi)
【问题讨论】:
标签: python increment quicksort