3.3 栈和队列求解迷宫问题
栈和队列都是存放多个数据的容器。通常用于存放临时数据:
① 如果先放入的数据先处理,则用队列。
② 如果后放入的数据先处理,则使用栈。
1 用栈求解迷宫问题
问题描述
给定一个M×N的迷宫图、入口和出口、行走规则。求一条从指定入口到出口的路径。所求路径必须是简单路径,即路径不重复。
行走规则:上、下、左、右相邻方块行走。其中(i,j)表示一个方块
例如,M=8,N=8,图中的每个方块,可用空白表示通道,用阴影表示障碍物。为了算法方便,一般在迷宫外围加上一条围墙。
栈和队列都是存放多个数据的容器。通常用于存放临时数据:
① 如果先放入的数据先处理,则用队列。
② 如果后放入的数据先处理,则使用栈。
1 用栈求解迷宫问题
问题描述
给定一个M×N的迷宫图、入口和出口、行走规则。求一条从指定入口到出口的路径。所求路径必须是简单路径,即路径不重复。
行走规则:上、下、左、右相邻方块行走。其中(i,j)表示一个方块
例如,M=8,N=8,图中的每个方块,可用空白表示通道,用阴影表示障碍物。为了算法方便,一般在迷宫外围加上一条围墙。
