递归与分治法

Posted AYE89

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了递归与分治法相关的知识,希望对你有一定的参考价值。

分治法思想

把问题分解为k个规模较小的子问题,这些子问题(互相独立且)结构与原来问题的结构相同,再递归地求解这些子问题。

  • 问题分解成子问题;(divide)
  • 当达到某个阈值n0时,给出直接求解的方法;(conquer)
  • 最后把各个子问题的解合并起来,得到原来问题的解;(merge)

 

算法设计伪代码 

 

 时间复杂性

分析分治法的运行时间,先列出递归方程,例如

 

 典型例子

mergesort等

 

以上是关于递归与分治法的主要内容,如果未能解决你的问题,请参考以下文章

递归的逻辑——递归与分治

五类常见算法小记 (递归与分治,动态规划,贪心,回溯,分支界限法)

第二章:递归与分治策略

递归与分治思想:治思想 && 折半查找法(迭代 && 递归)

算法设计与分析分治法--快速排序的递归和非递归实现

分治策略(求解递归式的方法)