所谓分治 其实就是 分而治之 我们常见的算法 例如 Quick sort和merge sort 等等都是分治思想的使用者。 例如我们在快排中,将数据分为三段 左侧是小于基准的,右侧是大于基准的,然后这样递归,把左右都分开来处理 分而治之。
所以分治思想一般有三个步骤
我们接下来分析归并排序
- 分解 : 将数据分解,最终分解成一个一个的单位
- 解决子问题: 将数据按照树的方向,从一个一个排序,然后两个两个的排序,然后4个4个的排序。。。
- 合并子问题最终解决整问题: 将这些数据一一的merge最终获得一个排序完成的数据。