1.问题
二分归并排序:对n个不同的数构成的数组A[1…n]进行排序,其中n=2^k

2.解析
1、对于一组数据a[N],申请临时空间,temp[N],用于临时存放数据,划分为两个序列
2、设置两个指针分别指向两个序列的首部,其中中间数据mid=(start+end)/2划分到前一个序列当中
3、比较两个指针所指向的数据,选择相对小的元素放入到合并空间,并移动指针到下一位置
4、重复步骤3,直到这两个指针的某个指针超出自身所指向序列
5、将另外一个序列全部依次放入到临时数组中(合并空间)
二分归并排序
3.设计

二分归并排序
4.分析
时间复杂度:O(nlogn)

5.源码
https://github.com/ylx1234/MergeSort

相关文章:

  • 2021-07-20
  • 2021-04-03
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-01-04
  • 2021-04-30
相关资源
相似解决方案