[Data Structure & Algorithm] 归并排序
归并排序
- 将两个排好序的序列合并成一个有序的序列
- 基本思路
- 两个输入序列A和B,一个输出序列C
- 比较A和B中同位置的值,将较小的值存入C中
- 直到A和B中任何一个到达末尾,将另一个序列剩余的所有元素存入C中
- 时间复杂度 - O(nlog2n)
- 缺点 - 性能较差
- 需要将数据复制到临时数组,还需要复制回来
- 优点
- 比快速排序稳定
- 是大多数外排序算法的基础
m路平衡归并
- 将m个有序表组合成一个新的有序表
- 每一次归并后,剩下的记录是原来的1/m,直到剩下一条记录