使用递归的迷宫深度优先路径算法

Posted

技术标签:

【中文标题】使用递归的迷宫深度优先路径算法【英文标题】:Maze depth first path algorithm using recurssion 【发布时间】:2015-05-25 07:39:54 【问题描述】:

我需要一种算法来在迷宫中找到最短路径,该算法将使用递归。据我了解,使用递归的算法通常是 DFS。

我一直在寻找整个互联网,大多数结果只是 Dijkstra 的算法,它不是递归的。有人可以提供伪代码或指出正确的方向吗?

谢谢。

【问题讨论】:

Wikipedia article on DFS 上提供了伪代码。非递归和递归变体。 【参考方案1】:

为什么需要使用递归?寻找最短路径最简单的算法是BFS,不是DFS,而且不是递归的。我知道没有使用递归的良好且快速的一般情况最短路径算法。

但还要注意,如果你的图(迷宫)是一棵,即没有环,那么从每个顶点到彼此只有一种方式,而且它会是最短的,所以 DFS将适用于这种情况。

【讨论】:

以上是关于使用递归的迷宫深度优先路径算法的主要内容,如果未能解决你的问题,请参考以下文章

走迷宫(深度优先遍历)

自动走迷宫--深度优先(非递归)算法

算法:深度优先搜索之迷宫寻径

自动走迷宫--深度优先(递归遍历)

动画演示深度优先算法搜寻逃出迷宫的路径

10分钟教你用python动画演示深度优先算法搜寻逃出迷宫的路径