迷宫求解运行时

2024-10-02 22:33:22 发布

您现在位置:Python中文网/ 问答频道 /正文

在我的帮助下,我的导入迷宫功能开始工作后,我的迷宫解决功能遇到了问题,经过2个小时的实验,我没有别的选择,只能再次寻求帮助。所以我的解迷宫函数抛出以下错误:

C:\Python34\python.exe C:/Users/Anton/PycharmProjects/BWINF_Aufgabe_1/Wegfinden.py
Traceback (most recent call last):
  File "C:/Users/Anton/PycharmProjects/BWINF_Aufgabe_1/Wegfinden.py", line 65, in <module>
    solved, solution = maze_solve(startx, starty, maze, solution)
        File "C:/Users/Anton/PycharmProjects/BWINF_Aufgabe_1/Wegfinden.py", line 44, in maze_solve
        solved, temp =  maze_solve(x-1, y, maze, solution)
      File "C:/Users/Anton/PycharmProjects/BWINF_Aufgabe_1/Wegfinden.py", line 34, in maze_solve
        solved, temp = maze_solve(x+1, y, maze, solution)
      File "C:/Users/Anton/PycharmProjects/BWINF_Aufgabe_1/Wegfinden.py", line 34, in maze_solve
        solved, temp = maze_solve(x+1, y, maze, solution)
      File "C:/Users/Anton/PycharmProjects/BWINF_Aufgabe_1/Wegfinden.py", line 27, in maze_solve
        if maze[x][y] == "#" or maze[x][y] == "*":
    RuntimeError: maximum recursion depth exceeded in comparison

    Process finished with exit code 1

我的代码:http://hastebin.com/owugupicaz.py

迷宫:

6 9
#########
#  #    #
#  # #  #
#  K #  #
#    #  #
#########

Tags: inpylineusersfilesolution迷宫anton
1条回答
网友
1楼 · 发布于 2024-10-02 22:33:22

您陷入无限递归,因为您正在处理已标记为潜在路径的路径。这是因为你没有在重复之前标记你的路径。将maze[x][y]="*"放在递归和解决方案检查之外,而不是在检查内部标记路径以进行解决。如果将坏路径设置为" ",那么自然只有好路径会保持标记状态

相关问题 更多 >