对10个键值为48, 37, 65, 93, 72, 16, 27, 50, 9, 53的记录序列进行升序排序,写出采用希尔排序算法,首趟间隔为4的插入排序后的序列
时间: 2023-09-25 15:11:18 浏览: 41
希尔排序算法
采用希尔排序算法,首趟间隔为4的插入排序后的序列如下:
首先,将序列分成4个子序列:
48 _ _ _ 37 _ _ _ 65 _ _ _ 93 _ _ _ 72 _ _ _ 16 _ _ _ 27 _ _ _ 50 _ _ _ 9 _ _ _ 53 _ _ _
对每个子序列进行插入排序:
48 _ _ _ 37 _ _ _ 53 _ _ _ 72 _ _ _ 16 _ _ _ 27 _ _ _ 50 _ _ _ 9 _ _ _ 65 _ _ _ 93 _ _ _
然后,缩小间隔序列,将间隔缩小为2,再次进行插入排序:
48 9 _ _ 37 16 _ _ 53 27 _ _ 72 50 _ _ 65 _ _ _ 93 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
最后,再次缩小间隔序列,将间隔缩小为1,进行普通的插入排序:
9 16 27 37 48 50 53 65 72 93
因此,对10个键值为48, 37, 65, 93, 72, 16, 27, 50, 9, 53的记录序列进行希尔排序算法,首趟间隔为4的插入排序后的升序序列为:9, 16, 27, 37, 48, 50, 53, 65, 72, 93。
阅读全文