算法:BFS

思路:

从起点开始,向四个方向扩展,记录每个点的父节点,直到找到终点为止。然后根据父节点信息,反向回溯路径,即可得到从起点到终点的最短路径。

时间复杂度:O(nm),其中n和m分别为迷宫的行数和列数。

C++ 代码

定义一个二维数组 NM 如 5 × 5 数组下所示:int maze55 = 0 1 0 0 00 1 1 1 00 0 0 0 00 1 1 1 00 0 0 1 0;它表示一个迷宫其中的1表示墙壁0表示可以走的路只能横着走或竖着走不能斜着走要求编程序找出从左上角到右下角的路线。入口点为00既第一格是可以走的路。数据范围: 2≤nm≤10 2≤nm≤10 输入的内容只包含 0≤val≤1 0

原文地址: http://www.cveoy.top/t/topic/bfwx 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录