分治算法学习笔记

1、分治算法的设计思想:

分治法的设计思想,大事化小,名个击破,分而治之。 将难以直接解决的大问题,分割成一些规模较小的子问题, 子问题相互独立并与原问题相同,以便各个击破,分为治之。

2、分治算法的基本思想

  • 分解为子问题
  • 求解子问题
  • 合并得到原问题的解

3、分治法的适用条件

4、分治算法的改进方法

  • 减少子问题的个数

  • 改进分治的均衡度

  • 减少合并的时间

5、分治算法选择题

解析:

在分治法中,通常我们说的“相同”指的是解决问题的方法或过程是相同的,而不一定是子问题在所有方面都完全相同。

例如,在归并排序中,我们将数组分成两半进行排序,这两半的排序过程是相同的,但它们可能包含不同的元素。

6、分治算法的三个过程

  • 划分

  • 递归地求解

  • 合并

7、分治算法时间复杂度分析的方法

可以用递归树来分析分治算法的时间复杂度。

8、分治法是将一个难以直接求解的复杂问题分解成若干个规模较小、 相互独立且类型相同的子问题,然后求解这些子问题, 直到子问题足够小能够直接求解,再将子问题的解组合成原始问题的完整答案。