《算法导论》-分治法-笔记
1.分治法的基本思想是:将原问题分解为若干个规模较小而类型却与原问题相同的子问题,然后递归地求解这些子问题,再合并这些子问题的解来得到原问题的解。应用分治法设计的算法通常都是递归算法。递归算法一次或多次地调用自身以解决相关的子问题。
2.采用分治法求解问题一般经过以下三个步骤:
- 分解: 将问题分割成若干的规模更小且与原问题同类型的子问题;
- 解决: 递归地求解子问题。当子问题规模足够小时,不必递归而直接求解子问题;
- 合并: 合并子问题的解以构造出原问题的解。
3.快速排序算法是基于分治法思想而设计的一种排序算法。它是一种原地址排序算法。快速排序算法的最坏情况时间复杂性为Θ(n2)
Coding