python-实现希尔排序

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python-实现希尔排序相关的知识,希望对你有一定的参考价值。

# encoding=utf-8


def shell_sort(alist):
    """希尔排序"""
    n = len(alist)
    gap = n // 2
    while gap >= 1:
        for j in range(gap, n):
            i = j
            while (i-gap) >= 0:
                if alist[i] < alist[i-gap]:
                    alist[i], alist[i-gap] = alist[i-gap], alist[i]
                    i -= gap
                else:
                    break
        gap //= 2

if __name__ == __main__:
    alist = [22, 1, 4, 553, 3, 212, 77]
    print(alist)
    shell_sort(alist)
    print(alist)

 

以上是关于python-实现希尔排序的主要内容,如果未能解决你的问题,请参考以下文章

python实现希尔排序(已编程实现)

希尔排序的python实现

python-实现希尔排序

希尔排序ShellSort算法详解Java/Go/Python/JS/C不同语言实现

python数据结构与算法第十一天希尔排序

希尔排序的介绍和希尔排序基本思想以及代码实现