美文网首页
Quick sort. Θ(nlgn)

Quick sort. Θ(nlgn)

作者: R0b1n_L33 | 来源:发表于2017-11-14 17:08 被阅读18次
    from random import shuffle
    
    def partition(array, p, r):
        x = array[r]
        i = p - 1
        for j in range(p, r):
            if array[j] <= x:
                i += 1
                array[i], array[j] = array[j], array[i]
        i += 1
        array[i], array[r] = array[r], array[i]
        return i
    
    def quickSort(array, p, r):
        if p < r:
            division = partition(array, p, r)
            quickSort(array, p, division-1)
            quickSort(array, division+1, r)
    
    
    l = list(range(10))
    shuffle(l)
    print(l)
    ##############
    
    quickSort(l, 0, len(l)-1)
    
    ##############
    print(l)
    
    

    相关文章

      网友评论

          本文标题:Quick sort. Θ(nlgn)

          本文链接:https://www.haomeiwen.com/subject/xkjfvxtx.html