如何选择给定迷宫的数据结构?

时间:2016-10-24 19:28:32

标签: tree breadth-first-search depth-first-search maze

我有迷宫问题,如下图所示。

您可以将其视为6x6矩阵,目标是找到特定颜色块的出口。根据我查看的迷宫问题,我认为应用bfs可能是一个好主意而不是使用dfs。但是,我很困惑如何实现一个可以容纳两个以上节点的树。有没有其他数据结构我可以使用而不是树?也许,图?此外,许多问题被要求应用bfs或dfs来解决迷宫问题,但我从未见过应用A *搜索算法的案例。它的效率和实施如何?如果你能给我一个我可以进步的暗示,我将不胜感激。

这是图片:

enter image description here

2 个答案:

答案 0 :(得分:0)

您可以实施" M"方式树:http://webdocs.cs.ualberta.ca/~holte/T26/m-way-trees.html

答案 1 :(得分:0)

关于术语的注释:图形不能替代树,因为树是一种图形。我认为你要找的是格子。

我将其实现为具有X * Y节点的矩阵形网格,并且每个节点具有最多四个连接(北,南,东和西)。从每个节点之间的连接开始,然后删除两个节点之间的任何连接,其中一个或两个节点被一个墙占用。

如果您有代表问题的图表,则可以使用Dijkstra's algorithmvarious others等内容进行解决。