C ++ DFS中的迷宫回溯算法?

时间:2015-03-14 10:34:23

标签: c++ c algorithm depth-first-search maze

我是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并从另一个方向开始。我怎么能用队列和堆栈做到这一点?任何人都可以对此有所了解吗?非常感谢你?

1 个答案:

答案 0 :(得分:0)

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