牛客 HJ43 —— 《迷宫问题》
总体思路:
(1)迷宫:用Graph来表示,Graph以邻接表的形式储存。
(2)顶点:每个顶点以键值对的形式存在邻接表中,邻接表的键是顶点坐标(行,列)。值是保存该顶点信息的子字典,这个子字典需要保存的信息有:该顶点的值value(字符串形式)、该顶点的相邻顶点的坐标neighbors(列表形式)。
最后邻接表应该是这种形式:
{
(0,0): {
'value': '0', 'neighbors': [(0,1)]},
(0,1): {
'value': '1', 'neighbors': [(0,0), (0,2), (1,1)]},
...
(4,4): {
'value': '0', 'neighbors': [(3,4), (4,3)]},
}
(3)走迷宫的过程:DFS,深度优先搜索,不清楚什么是DFS的可以看这篇文章文末: