算法步骤:
1、申请空间,使其大小为两个已经排序序列之和,该空间用来存放合并后的序列
2、设定两个指针,最初位置分别为两个已经排好序列的起始位置
3、比较两个指针所指向的元素,选择相对小的元素到合并空间,并移动指针到下一位置
4、重复步骤3直到某一指针达到序列结尾
5、将另一序列下剩下的所有元素直接复制合并到序列结尾
归并排序用到了分治策略。
用分治策略解决问题分为三步:分解、解决、合并。也即:将原来的问题划分为n个规模较小而结构与原问题相似的子问题,递归解决这些小问题,然后再合并其结果,得到原来问题的解。 此处n=2。
代码如下(有待优化):
版权声明:本文为博主原创文章,未经博主允许不得转载。
时间: 2024-10-23 20:40:54