我是C ++的新手,目前在一个创建使用DFS算法生成的迷宫的项目中。

我已经成功地设法生成了一条路径,例如

0 , 0 , 0 , 0,  0
0 , 1 , 1 , S,  0
0 , 1 , 0 , 0,  0
0 , 1 , 0 , 0,  0
0 , D , 0 , 0,  0
0 , 0 , 0 , 0,  0


如上,

Source是初始单元格,1是我基于随机邻居创建的路径,事实是D是“死角”。因此,如果可能的话,我想回溯到S并从另一个方向开始。我应该如何使用队列和堆栈来做到这一点?谁能对此有所启发?非常感谢?

最佳答案

如果我们使用基本的AI知识会更好。定义针对此特定问题的一组有效操作,即初始状态,最终状态,并让您的程序对定义的操作使用search tree of states来查找解决方案。

关于c++ - C++ DFS中的迷宫回溯算法?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29047911/

10-10 09:23