一品网
  • 首页

希尔排序


import random

def insert_sort_gap(li,gap):
    for i in range(gap,len(li)):
        tmp = li[i]
        j = i - gap
        while j >= 0 and li[j] > tmp:
            li[j+gap] = li[j]
            j -= gap
        li[j+gap] = tmp

def shell_sort(li):
    d = len(li) // 2
    while d >= 1:
        insert_sort_gap(li,d)
        d = d // 2

def main():
    li = list(range(1000))
    random.shuffle(li)
    shell_sort(li)
    print(li)

if __name__ == '__main__':
    main()
数据结构与算法

相关


数据结构与算法之PHP查找算法(哈希查找)

数据结构与算法之PHP查找算法(二分查找)

数据结构与算法之PHP排序算法(冒泡排序)

C#数据结构与算法系列(二十三):归并排序算法(MergeSort)

数据结构与算法-二叉树、AVL树、B树、红黑树总结

数据结构与算法-二叉堆

数据结构与算法系列(三)—— 经典知识点总结

数据结构与算法之hash,bitmap简单实现

数据结构与算法

数据结构与算法| 复杂度分析

【数据结构与算法】--JavaScript 链表

数据结构与算法 -- 哈夫曼树思想与创建详解1

标签

一品网 冀ICP备14022925号-6