Rob*_*ray 6 python stack-overflow recursion
今天类中递归和堆栈溢出的有趣话题,我想知道是否有任何方法可以增加Python中的最大递归深度?写了一个快速函数,用于使用递归查找n的阶乘:
def factorial(n):
if n == 1:
return n
else:
return n * factorial(n-1)
Run Code Online (Sandbox Code Playgroud)
它可以应对阶乘(994)而不是阶乘(995).给出的错误是:
RuntimeError: maximum recursion depth exceeded in comparison
Run Code Online (Sandbox Code Playgroud)
显然,可以迭代地找到更高的阶乘,但是,为了论证和阴谋,最大递归深度可以增加吗?
import sys
iMaxStackSize = 5000
sys.setrecursionlimit(iMaxStackSize)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
15217 次 |
| 最近记录: |