
递归详解(含经典例题)
5星
- 浏览量: 0
- 大小:None
- 文件类型:PDF
简介:
本书深入浅出地解析了递归的概念与原理,并通过精选的经典编程例题详细讲解了如何应用和理解递归技巧,适合初学者及进阶读者学习。
所谓递归就是通过逐层求解母问题的子问题来解决问题。关键在于设置合适的递归边界条件和递归式。
举个简单的例子:计算序列1+2+3+4+...+n的结果,可以用公式表示为f(n)。
对于这个例子来说,如果要得到f(n),我们需要先知道f(n-1)的值,即 f(n)= n + f(n-1)
同样的道理适用于求解f(n-1), 即 f(n - 1) = (n - 1) + f(n - 2)
那么问题来了:递归何时停止呢?
根据题目条件,自变量n是不断减小的。因此,我们需要设定一个终止点来防止无限循环下去。从题意可知,当 n 的值为最小值即1时, f(1)=1
所以当 n = 1 时就是我们的边界。
以 n=3为例验证一下:
根据递归公式可以得出一系列表达式(这里为了便于理解,实际上只需要明白思路即可):
f(3) = 3 + f(2)
= 3 + (2 + f(1))
= 3 + (2 + 1)
= 6
全部评论 (0)
还没有任何评论哟~


