实验4.1(二分归并排序)

1. 问题

对n个不同的数构成的数组A[1…n]进行排序,其中n=2^k。

2. 解析

对于数组A,先不断对半分割,再进行两两归并操作,例如数组4 2 7 5 1 3 8 6,前三步为分割,后三步为归并。
实验4.1(二分归并排序)

3. 设计

关键函数
实验4.1(二分归并排序)
实验4.1(二分归并排序)

4. 分析

二分归并排序算法时间复杂度:O(n) = nlogn – n + 1

5. 源码

https://github.com/dickdan/4.1-mergeSort/blob/master/4.1(mergeSort).cpp