【发布时间】:2011-06-29 10:02:25
【问题描述】:
我正在做一项 AI 作业,尽管我的教授提出了建议,但我无意用 lisp 写这个作业。但是,我确实想递归地编写它,以使其简洁明了。这是我的问题:
如果我在大型状态空间上执行搜索,我是否会面临堆栈空间不足的重大风险? Python 堆栈有多深?
【问题讨论】:
-
你为什么不首先使用尾调用递归?堆栈溢出应该不是问题。
-
用lisp写是个好主意。
-
@Don Roby:获得学分可能是一个更好的主意,但是以 两种 语言解决程序最好恕我直言。让 OP 在 Python 中尝试。根据我的经验,由于标准库中提供了高效的 FIFO 和优先级队列,因此更复杂的“经典 AI”搜索算法会更容易。
-
用与教授建议的语言不同的语言来做这个项目从来都不是一个好主意。 1) 他/她可能有充分的理由选择它(有时只是为了向您展示另一种语言,因此它可能不是解决项目最简单的语言) 2) 这是他们期望 GRADE 的语言。通过使用与所有同学不同的语言来完成项目,你会让你的教授的生活变得更加困难,她/他可能会因为你的努力而给你打分。
-
@Larsmans:我不是不同意你,而是不同意 OP。我同意用多种语言做任何项目几乎总是能提供信息。 (Alex 说他“无意”使用 LISP,这是我遇到的问题......)也许我应该说“提交项目......”。