def shell_sort(arr):
n = len(arr)
gap = n//2
while gap>0:
for i in range(gap,n):
while i-gap >= 0 and arr[i]<arr[i-gap]:
arr[i],arr[i-gap] = arr[i-gap],arr[i]
i = i - gap
gap//=2
return arr
if __name__ == '__main__':
list1 = [5,4,3,0,6]
a = shell_sort(list1)
print(a)
最坏 O(n*2)
不稳定