假如共10个数据[交换法]
下面展示比较,数字表示下标
第一轮: [0, 5] [1, 6] [2, 7] [3, 8] [4, 9]
第二轮: [0, 2] [1, 3] [2, 4] [0, 2] [3, 5] [1, 3] [4, 6] [2, 4] [0, 2] [5, 7] [3, 5] [1, 3] [6, 8] [4, 6] [2, 4] [0, 2] [7, 9] [5, 7] [3, 5] [1, 3]
第三轮省略......
第一轮:
5组有序,间隔5为一组
第二轮:
每组前两个排序,前两个变成有序数组,第3个往有序数组里面加,前三个变成有序数组,第四个往有序数组里面加,前四个变成有序数组
很像插入排序
分两组:偶数组[0, 2, 4, 6, 8] 、奇数组[1, 3, 5, 7, 9]
这两组最后变成有序数组
第三轮:
直接对整体进行排序,只不过就排一次
因为两个数组的数据是交叉且有序的,只需要相邻比较交换即可