算法导论快速排序python实现

来源:互联网 发布:在单片机中TXD和RXD 编辑:程序博客网 时间:2024/05/22 10:40
#-*-coding:UTF-8-*-import sysimport random#sys.setrecursionlimit(1000000)def quicksort(A,p,r):    if p<r:        x= random.randint(p, r)        A[x],A[r]=A[r],A[x]        q=partition(A,p,r)        quicksort(A,p,q-1)        quicksort(A,q+1,r)def partition(A,p,r):    x=A[r]    i=p-1    for j in range(p,r):        if A[j]<=x:            i+=1            A[j],A[i]=A[i],A[j]    A[i+1],A[r]=A[r],A[i+1]    return i+1A=[10,9,8,7,6,5,4,3,2,1]quicksort(A,0,9)print A

0 0