归并分类算法C++实现(递归/非递归/自然合并)
归并排序
归并分类的方法是算法分析中的重要内容,传统的归并排序(递归实现,空间复杂度为O(n))较为适合初学者理解分治法的思路,同时也很好地体现了递归分解的思想。
基本思想:
(1)将待排序元素分成大致相同的两个子集合
(2)分别对两个子集合进行排序
(3)将排好序的两个子集合并成一个排好序的集合
一、递归法。
将长度为n的数组,从中间递归分隔为n个自然有序的单个元素,再两两合并,最终合并为有序的整体。
具体 实现代码如下:
void mergesort(int* a,int low,int high){
原创
2021-05-10 18:14:29 ·
1447 阅读 ·
0 评论