From a45c4567591780d31e90cda2190f8b78adb258a7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A7=BB=E5=8A=A8=E5=BC=80=E5=8F=91=E5=B0=8F=E5=86=89?= <510495266@qq.com> Date: Wed, 10 Nov 2021 09:53:44 +0800 Subject: [PATCH] =?UTF-8?q?Update=20=E9=80=92=E5=BD=92.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 8 Algorithms Analysis/递归.md | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/8 Algorithms Analysis/递归.md b/8 Algorithms Analysis/递归.md index 2b3f933..f751283 100644 --- a/8 Algorithms Analysis/递归.md +++ b/8 Algorithms Analysis/递归.md @@ -1,6 +1,8 @@ # 递归 -递归是一种设计和描述算法的有力工具。 递归算法执行过程分 `递推` 和 `回归` 两个阶段 +递归是一种设计和描述算法的有力工具。 也是回溯法和动态规划的基础。 + +递归算法执行过程分 `递推` 和 `回归` 两个阶段 在 `递推` 阶段,将大的问题分解成小的问题 在 `回归` 阶段,获得最简单问题的解后,逐级返回,依次得到稍微复杂情况的解,知道获得最终的结果 @@ -13,6 +15,9 @@ 递归运行效率较低,因为有函数调用的开销,递归多次也可能造成栈溢出。 +画递归树,可以很方便地看到是否存在重叠子问题,如果有的话,就可以采用动态规划。 + + ### 其它案例