#__author__=lx
#__date__=2011-09-27
#__brief_=shell_sort
def shell_sort( l ):
gap = 0
n = len( l )
while ( gap <= n ):
gap = gap * 3 + 1
while ( gap > 0 ):
i = gap
while ( i < n ):
j = i - gap
temp = l[i]
while ( ( j >= 0 ) and ( l[ j ] > temp )):
l[ j + gap ] = l[ j ]
j = j - gap
l[ j + gap ] = temp
i += 1
gap = ( gap - 1 ) / 3
if __name__ == "__main__":
l = []
l.append( 3 )
l.append( 2 )
l.append( 1 )
l.append( 8 )
l.append( 0 )
l.append( 20 )
shell_sort( l )
for i in l:
print i