#shell_sort
class Shell_sort:
def __init__(self,data):
self.data=data
def display(self):
for i in range(len(data)):
print('[%3d]'%data[i],end='')
print()
def shell(self):
size=len(data)
divide_number=size//2
k=1
while divide_number!=0:
for i in range(divide_number,size):
tmp=data[i]
j=i-divide_number
while data[j]<data[i] and j>=0:
data[i]=data[j]
j=j-divide_number
data[j+divide_number]=tmp
print('第%d次的排序结果为:'%k,end='')
k+=1
display(data)
print('--------------------------------')
divide_number=divide_number//2