python快速排序

2017-10-17  本文已影响0人  可是那然后呢
def quicksort(list,l,r):     #传入待排序list,list最左边下标,list最右边下标
    if l<r:         
        i=l         
        j=r         
        x=list[l]
        while i<j:             
            while i<j and list[j]>=x:                 
                j -= 1 
            if i<j:                 
                list[i]=list[j]                 
                i += 1 
            while i<j and list[i]<x:                 
                i += 1             
            if i<j: 
                list[j]=list[i]
                j -= 1         
        list[i]=x 
        quicksort(s,l,i-1)         #递归调用
        quicksort(s,i+1,r)        #递归调用
上一篇 下一篇

猜你喜欢

热点阅读