排序_3
希尔排序:分组排序
是把记录按下标的一定增量分组,对每组使用直接插入排序算法排序;
随着增量逐渐减少,每组包含的关键词越来越多,当增量减至1时,整个文件恰被分成一组,算法便终止。
def shell_sort(array):
gap=len(array)
while gap>1:
gap=gap//2
for i in range(gap,len(array)):
for j in range(i%gap,i,gap):
if array[i]<array[j]:
array[i],array[j]=array[j],array[i]
return array
posted on 2018-11-26 12:09 happygril3 阅读(109) 评论(0) 收藏 举报
浙公网安备 33010602011771号