python数据结构之希尔排序

Posted kailicard

tags:

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

image

def shell_sort(alist):
    n=len(alist)
    gap= int(n / 2) #步长
    while gap>0:
        for i in range(gap,n):
            j=i
            while j>=gap and alist[j-gap] > alist[j]:
                alist[j-gap],alist[j]=alist[j],alist[j-gap] #交换值
                j-=gap
        gap=int(gap/2)  #新的步长
alist=[11,33,44,55,66,9,72,86,93,10,1,0,2]
shell_sort(alist)
print(alist)

以上是关于python数据结构之希尔排序的主要内容,如果未能解决你的问题,请参考以下文章

Python|插入排序之希尔排序

经典排序算法系列之插入排序和希尔排序----小白理解(python)

Java数据结构之排序---希尔排序

java排序之插入排序(直接插入排序和希尔排序)

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

排序算法之希尔排序