问题 单项选择题

设有关键码序列(7,32,16,49,57,6,21,95,78,20,4,62),要按关键码值递增的次序排序,采用初始增量为4的希尔排序法,一趟扫描后的结果为( )。

A.(7,6,4,49,57,20,16,62,78,32,21,95)

B.(4,6,49,20,57,78,62,21,7,95,32,16)

C.(4,6,7,16,32,20,57,62,78,95,49,21)

D.(4,6,49,95,78,62,7,20,21,32,57,16)

答案

参考答案:A

解析:
对n个记录用希尔(Shell)排序法进行排序的方法如下:首先取增量d1(d1<n),把全部记录分成d1个组,所有距离为d1倍数的记录放在同一组中,各组内使用插入排序法排序;然后取d2(d2<d1),重复上述分组和排序工作,直到取d=1,即所有记录放在一个组中时排序为止。
如此,对(7,32,16,49,57,6,21,95,78,20,4,62)取初始增量为4进行分组:
{7,57,78)、{32,6,20}、{16,21,4}、{49,95,62}
再插入排序,就是:
7,6,4,49,57,20,16,62,78,32,21,95

单项选择题
单项选择题 A1型题