所以,基本上,你所拥有的是......
+----+----+
Entrance -> | R1 | R4 |
+----+----+
| R2 | R3 | -> Exit
+----+----+
你需要找到去R3的路(出口在哪里)
所以,我们可以看看这个问题,像这样。
我们从entrance开始
+--------------+-----------------+------+---------+
| Current Room | Available Exits | Path | History |
+--------------+-----------------+------+---------+
| Entrance | R1 | | |
+--------------+-----------------+------+---------+
将当前房间添加到历史记录
+--------------+-----------------+------+----------+
| Current Room | Available Exits | Path | History |
+--------------+-----------------+------+----------+
| Entrance | R1 | | Entrance |
+--------------+-----------------+------+----------+
是否包含Exit?不,那我们找个房间去,在这种情况下,R1是我们唯一的选择,让我们去R1。将Entrance 添加到我们的路径
+--------------+------------------+----------+----------+
| Current Room | Available Exits | Path | History |
+--------------+------------------+----------+----------+
| R1 | Entrance, R2, R4 | Entrance | Entrance |
+--------------+------------------+----------+----------+
是否包含Exit?不。好的,我们需要删除我们已经访问过的所有房间。这给我们留下了R2 和R4,不管我们选择哪个。
将当前房间添加到历史和路径中
+--------------+------------------+-------------+-------------+
| Current Room | Available Exits | Path | History |
+--------------+------------------+-------------+-------------+
| R1 | Entrance, R2, R4 | Entrance,R1 | Entrance,R1 |
+--------------+------------------+-------------+-------------+
我们去R4
+--------------+-----------------+-------------+-------------+
| Current Room | Available Exits | Path | History |
+--------------+-----------------+-------------+-------------+
| R4 | R1, R3 | Entrance,R1 | Entrance,R1 |
+--------------+-----------------+-------------+-------------+
是否包含Exit?不,我们已经是R1,所以剩下的就是R3。
将R4 添加到我们的路径和历史中
+--------------+-----------------+----------------+----------------+
| Current Room | Available Exits | Path | History |
+--------------+-----------------+----------------+----------------+
| R4 | R1, R3 | Entrance,R1,R4 | Entrance,R1,R4 |
+--------------+-----------------+----------------+----------------+
我们去R3
+--------------+-----------------+----------------+----------------+
| Current Room | Available Exits | Path | History |
+--------------+-----------------+----------------+----------------+
| R3 | R2, R4, Exit | Entrance,R2,R4 | Entrance,R2,R4 |
+--------------+-----------------+----------------+----------------+
是否包含Exit?是的!!!
将它添加到我们的路径中,让我们开始吧!!
+--------------+-----------------+---------------------+---------------------+
| Current Room | Available Exits | Path | History |
+--------------+-----------------+---------------------+---------------------+
| R3 | R2, R4, Exit | Entrance,R2,R4,Exit | Entrance,R2,R4,Exit |
+--------------+-----------------+---------------------+---------------------+
所以,你通过“迷宫”的路径是Entrance -> R2 -> R4 -> Exit,我们甚至不需要回溯!
现在,上面的工作流程有一个模式,看看你能不能挑出来。尝试每次选择不同的房间,看看它会把你带到哪里。
从技术上讲,您不需要历史记录,因为您不太可能回溯,但如果迷宫变得更复杂,它会派上用场,因为如果您进行回溯,您会弹出最后一个元素这条路,但历史会提醒你不要再走那条路;)
老实说,我认为办公桌检查作为一个概念被低估了,我妻子对我很生气,因为我有几十本笔记簿,里面都有不同想法的不同涂鸦,全都无关,所以我需要一个笔记为每个单独的想法预订??