数据结构和算法分析程序猿阵线联盟-汇总各类技术干货

八大排序算法的Python实现__8__计数排序

2017-11-18  本文已影响0人  流月0

个人技术博客地址:http://songmingyao.com/


原理

源码

def count_sort(l):
    max = 0
    min = 1024

    for item in l:
        if item > max:
            max = item
        elif item < min:
            min = item

    count = [0]*(max-min+1)
    for index in l:
        count[index-min] += 1

    index = 0
    for i in range(max-min+1):
        for j in range(count[i]):
            l[index] = i+min
            index += 1

if __name__ == '__main__':
    l = [6, 5, 2, 8, 9, 4, 1, 0, 3, 7]
    print(l)
    count_sort(l)
    print(l)

时间复杂度

上一篇 下一篇

猜你喜欢

热点阅读