美文网首页
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