队列迷宫解
迷宫表示使用二维数组mg[][]表示迷宫0 表示可通行的路1 表示墙不可通行边界用墙包围防止越界第一步初始化1. 创建空队列 2. 将入口点(e.i, e.j, pre-1)入队 3. 标记入口点为已访问mg[xi][yi] -1第二步循环搜索核心while (队列不为空) { 1. 出队一个方块作为当前方块 2. 检查是否为出口 如果是 → 调用print函数输出路径返回成功 3. 扫描四个方向上、右、下、左 对每个方向 - 计算邻居坐标 (i1, j1) - 如果邻居可走mg[i1][j1] 0 * 创建新方块记录前驱为当前方块下标 * 新方块入队 * 标记邻居为已访问mg[i1][j1] -1 }第三步路径回溯当找到出口时从出口方块开始 while (pre ! -1) { 记录当前方块 移动到pre指向的前驱方块 } 逆序输出得到从入口到出口的路径仓库abcd: 队列迷宫
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2526736.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!