设有关键码序列(7 32 16 49 57 6 21 95 78 20 4 62) 要按关键码值递增的次序排序 采用初始增量为

计算机 关键,次序,增量 已帮助 人

设有关键码序列(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)

热搜:党的二大于1922年7月16日至23日在上海召开

答案解析

难度★★☆ 搜索
  • 参考答案: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