希尔排序

2020-05-28  本文已影响0人  卅清

希尔排序:

插入排序改进,先进行分组,对每组使用直接插入排序算法,随着增量的减少,元数原来越多,直到增量为1,分成一组,结束。

def shell_sort(li):

n =len(li)

gap = n//2

    while gap >0:

for iin range(gap,n):

j= i

while j>=gapand li[j-gap] > li[j]:

li[j-gap],li[j] = li[j],li[j-gap]

j -= gap

gap = gap/2

alist = [54,26,93,17,77,31,44,55,20]

shell_sort(alist)

print(alist)

上一篇 下一篇

猜你喜欢

热点阅读