递归
1. 递归的定义
- 递归应用在函数上就是函数体内部有自己本身的调用,简单来说就是自己调用自己
- Python3默认递归深度最大为100,超过100会报递归深度超过的错误,可以自己设置递归深度
- 效率不高,消耗栈资源
- 必须有返回条件
格式(求 n 的阶乘)
def recursion(n):
if n == 1:
return 1
else:
return n * recursion(n - 1)
print(recursion(3))
2. 递归与普通循环的比较
- 递归所需的时间比普通循环多很多,由于递归深度原因,暂时演示不了
3. 递归的使用场景
- 递归主要应用在一些科学计算上,比如汉诺塔
4. 设置递归深度
sys.setrecursionlimit(3000)
本文详细解析了递归的基本概念,包括其定义、格式及在Python中的实现方式。对比了递归与普通循环的效率差异,并介绍了递归在科学计算如汉诺塔问题中的应用场景。此外,还讲解了如何在Python中设置递归深度。
1万+

被折叠的 条评论
为什么被折叠?



