快速排序

第一次用python写快排···感觉不是很熟,还是要多练QAQ

import random

def quickSort(array,lo,hi):#左闭右bi
#    print(array)
#    print("lo:"+str(lo))
#    print("hi:"+str(hi))
    if lo>hi:
        return
    seed=array[lo]#选取标准位
    l=lo
    h=hi
    while(l=seed):#从右向左寻找第一个比标准位小的
            h=h-1
        while(lhi:
        return
    s=random.randint(lo,hi)
#    print(str(lo)+" "+str(hi)+" "+str(s))
    tmp=array[lo]
    array[lo]=array[s]
    array[s]=tmp

    seed=array[lo]
    l=lo
    h=hi
    while(l=seed):
            h=h-1
        while(l

你可能感兴趣的:(快速排序)