【发布时间】:2015-02-03 22:47:09
【问题描述】:
我创建了一个使用递归来解决简单迷宫的程序。如果出现相当复杂的迷宫,我会得到最大递归深度误差。我已经在这个网站上搜索了那个错误并阅读了主题,所以我相信我对正在发生的事情有一个大致的了解。
与我看到的其他线程不同,我并不想增加递归限制。 sys.setrecursionlimit() 不是我要找的。我希望能够处理溢出,而不是崩溃让程序打印一条消息(print("Sorry but this maze solver was not able to finish analyzing the maze due to recursion limits))并关闭。
我知道使用 try 和 except 来处理错误,但我不确定是否可以合并它来处理最大递归深度错误。
【问题讨论】:
-
请注意,您通常可以使用队列数据结构将任何递归算法实现为非递归算法。这是绕过递归限制的一种方法。
-
您好,感谢 JME 提供的信息。我需要对这个作业使用递归(这是一个类问题)
标签: python python-3.x recursion error-handling