C++迷宫问题

把一只老鼠从一个入口处赶进迷宫,迷宫处设置很多隔壁,对前进的方向形成了多处障碍,假设前进的方向有4个,分别是上、下、左、右,在迷宫的唯一出口处放置了奶酪,吸引老鼠在迷宫中寻找通路以达到出口。

(1)可以将迷宫定义成一个二维数组。二维数组的下标可以用于描述老鼠当前的位置,下标元素取值0或1,其中元素值1表示有障碍,元素值0表示无障碍。
(2)对于老鼠前进的4个试探方向上、下、左、右,假定试探方向为顺时针,可以通过某种逻辑关系来表示和实现。
(3)采用回溯法实现问题的求解。从入口出发,按某一方向向前探索,若能走通(未走过的),即某处可以到达,则到达新点,否则试探下一方向;若所有方向均没有通路,则沿原路返回,换下一个方向再继续试探,直到所有可能的通路都搜索到,或找到一条通路到达出口,或无路可走又返回入口点。
为了保证在任何位置上都能够沿原路返回,需要一个后进先出的栈来保存从入口到当前位置的路径。

这种?


温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-09-17
寻路算法
a*寻路

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网