Ale*_*lex 1 python recursion stack
我正在做AI的家庭作业,尽管我的教授的建议,我无意在lisp写这个作业.但是,我确实希望以递归方式编写它,更好地保持简洁和简洁.这是我的问题:
如果我在大型状态空间执行搜索,我是否会遇到堆积空间不足的主要风险?Python堆栈有多深?
Jim*_*imB 23
Python堆栈有多深?
python中的默认递归限制是1000帧.您可以sys.setrecursionlimit(n)自行承担更改风险.
sys.setrecursionlimit(n)
如果您已经开始使用python,我建议使用更适合该语言的模式.如果你想使用递归样式搜索,并且需要任意堆栈深度,你可以利用python的增强型生成器(协同程序)来创建"trampoline模式"(在PEP342中有一个例子)
尽管我的教授的建议,我无意在口齿不清中写这个作业
如果练习是基于递归的,那么尾随调用优化语言(如lisp)可能是您最好的选择.
Fre*_*Foo 5
Python中的递归(CPython,也就是说)不能更深入sys.getrecursionlimit().您可以将此限制设置为不同的值sys.setrecursionlimit.
sys.getrecursionlimit()
sys.setrecursionlimit
我看到三个选择:
list
append
pop
归档时间:
14 年,9 月 前
查看次数:
3637 次
最近记录: