合并排序算法是用分治策略实现对n个元素进行排序的算法。
基本思想:将带排序元素分成大小大致相同的两个子集合,分别对两个子集合进行合并排序,最终将排好序的子集合合并成所要求的的排好序的集合。
递归算法:
时间复杂度 T(n)=O(1) n<=1; T(n)=2T(n/1)+O(n);
T(n) = O(nlogn);
------------------------------------------------------------------
改进后的非递归合并排序算法:
基本思想:首先将数组a中相邻元素两两配对,用合并算法将它们排序,构成n/2组长度为2的有序的子数组段,然后再将它们排序成长度为4的有序子数组段,如此继续下去,直到整个数组排好序。