有数据序列(12,17,05,10,20,24,45,11,10,12),使用希尔排序方法将其排成升序序列。请回答下列问题。 (

有数据序列(12,17,05,10,20,24,45,11,10,12),使用希尔排序方法将其排成升序序列。请回答下列问题。 (1)分别写出增量为3和1的希尔排序结果。 (2)计算第一趟希尔排序中数据元素之间的总交换次数(两个元素之间的交换记l次)。
【正确答案】:(1)增量为3时希尔排序结果:10,11,05,12,17,10,12,20,24,45增量为3时希尔排序结果:05,10,10,11,12,12,17,20,24,45(2)5次
【题目解析】:教材171页希尔排序的思想:把记录按下标的一定增量分组,对每组使用直接插入排序算法排序;随着增量逐渐减少,每组包含的关键词越来越多,当增量减至1时,整个文件恰被分成一组,算法便终止。