《移动迷宫》游戏简介:迷宫只有两个门,一个入口,一个出口。一个骑士骑马从入口走进迷宫,迷宫中设置有很多墙壁,对前进方向造成障碍。骑士需要在迷宫中寻找通路以到达出口。
本游戏的迷宫是“移动”的,每次骑士进入迷宫时,迷宫的入口、出口,甚至是迷宫中设置的障碍都是不同的。
设计思路
解决类似的问题,使用回溯法是最行之有效的解题方法。骑士从入口开始,不断地对周围的道路进行试探:若能走通,则进入该位置,继续对周围进行试探;反之,则后退一步,继续寻求其他的可行路径。
通过不停地对可行道路进行试探,结果有两种:
- 骑士最终找到了一条通往出口的道路;
- 试探结束,没有通往出口的道路,骑士最终只能被迫返回入口,继续等到迷宫的下一次变化(程序结束)。
实例分析
假设迷宫为一块长为 10 ,宽为 8 的矩形区域,其中随机设置了入口、出口和该区域内可供通行的道路,如下图所示: