快速排序实现中出错

2024-09-30 16:37:56 发布

您现在位置:Python中文网/ 问答频道 /正文

代码链接在这里:http://ideone.com/eba7CB
我似乎找不到错误。感谢您的帮助和批评。

ar = []

def quick(l, r):
    if (r-l) <= 1:
        return

    pivot = ar[l]
    i = l+1
    for j in range(l+1,r):
        if ar[j] < pivot:
            ar[i],ar[j] = ar[j],ar[i]
            i+=1

    ar[i-1],ar[l] = ar[l],ar[i-1]
    # print i,j
    quick(l,i)
    quick(i+1,r)


def qSort():
    l = 0
    r = len(ar)
    quick(l,r)

ar = [4, 2, 13, 10, 7, 3]

qSort()
print ar

输出为[2,3,4,10,7,13]


Tags: 代码comhttpreturnif链接def错误