Fork-Join:
主要用来处理 分而治之 的问题。
将一个大问题,分割成为一些规模较小的相同问题,以便各个击破,分而治之
注:这些子问题之间没有联系, 如果子问题之间存在联系,就变成了动态规范算法
归并排序:
归并排序是建立在归并操作上的一种有效的排序算法。该算法是采用分治法 的一个非常典型的应用。将已有序的子序列合并,得到
完全有序的序列;即先使 每个子序列有序,再使子序列段间有序。
若将两个有序表合并成一个有序表,称为
2-
路归并,与之对应的还有多路归 并。
对于给定的一组数据,利用递归与分治技术将数据序列划分成为越来越小的半子表,在对半子表排序后,再用递归方法将排好序的
半子表合并成为越来越大 的有序序列。
为了提升性能,有时我们在半子表的个数小于某个数(比如
15
)的情况下,
对半子表的排序采用其他排序算法,比如插入排序。
归并排序示例如下:
![](https://i-blog.csdnimg.cn/blog_migrate/1ff093bdef77f49ffea75c296994a9a6.png)
合并后的子表继续合并: