因此,我正在完成一项任务,并且我完全陷入了困境。我必须修改其他人的代码,以使用堆栈来模仿递归并找到通过2D迷宫的方式。我不得不修改程序来显示正确的路径,不包括导致或者是死路一条的任何单元。跟踪正确的移动列表,同时使用堆栈遍历2D迷宫
程序当前工作的方式是,它从当前位置采取所有可能的移动,然后将它们按西,东,北,南顺序推送到堆栈。然后它从堆栈中弹出顶部单元格并移动到它。它会重复这个过程,直到它陷入死胡同,此时它会从堆栈顶部弹出一个较旧的可能位置并跳回到该位置,继续从那里继续,或者如果它发现它停止的结束。
我遇到的问题是程序不保持移动一旦他们出栈,所以回溯和标记不正确的细胞是不是一种选择的方式。
我的问题,更多的寻求建议我想,我应该尝试采取什么策略来标记不正确的细胞,使我可以在迷宫的结束只打印正确的呢?
,如果需要,我可以提供代码,但程序是相当大的,由几个.java文件。
让我知道你是否需要更多信息。我真的只是希望朝着正确的方向发展。