Skip to content

LeetCodeSolution/Maze

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 

Repository files navigation

迷宫问题

老鼠走迷宫问题的递归实现,是对递归思想的一种应用。

https://www.cnblogs.com/MrSaver/p/5940386.html

见 solution.py

构造迷宫如下:

[1, 1, 1, 1, 1, 1, 1]
[1, 0, 0, 0, 0, 0, 1]
[1, 0, 1, 0, 1, 0, 1]
[1, 0, 0, 0, 0, 1, 1]
[1, 1, 0, 1, 0, 1, 1]
[1, 0, 0, 0, 0, 0, 1]
[1, 1, 1, 1, 1, 1, 1]

其中 1 代表墙壁,0 代表通路

思路

搜索时先将搜索过的位置置 2,标记,以不要继续搜索。

然后看四个方向哪个方向是 0,如果是就递归搜索。

四个方向搜索结果获取结果,如果其中一个是 True,那就搜索成功。

如果失败,那就证明当前点不可走,将位置置回 0。

最后标记为 2 的就是正确的路径。

结果

上述迷宫,经过代码运行之后,结果如下:

[1, 1, 1, 1, 1, 1, 1]
[1, 2, 0, 0, 0, 0, 1]
[1, 2, 1, 0, 1, 0, 1]
[1, 2, 2, 0, 0, 1, 1]
[1, 1, 2, 1, 0, 1, 1]
[1, 0, 2, 2, 2, 2, 1]
[1, 1, 1, 1, 1, 1, 1]

其中 2 的位置就是迷宫通路。

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages