一.归并(2路归并)排序的原理(递归思想):就是不断的对待排序的数据进行拆分,拆分到单个数据为止,然后对拆分的数据进行两两排序合并,直至排序完成;拆分与合并原理图如下:
二.原理图解析:
第一次拆分是将整组数据一分为二;
第二次拆分先讲将左边一般拆分为一个数据和两个数据;
第三次拆分对上述拆分中的两个数据项拆分至单个数据;
将左边拆分结束后,就是将左边排序合并:
第一次排序是对第三次拆分的进行排序合并,结果为:6,10;
第二次排序是对第二次拆分进行排序合并,结果为:6,8,10;
左边有序后就是右边的拆分:
拆分基本同左边的拆分;
排序同理:第三次合并结果为:7,9;第四次排序合并结果为:5,7,9;
最后对6,8,10;与5,7,9;排序合并:5,6,7,8,9,10;
三.程序部分
//原理:将被排序数组拆分至单个数,然后在对其递归进行排序合并。
#include&