资源简介
广度优先搜索(也称宽度优先搜索,缩写BFS,以下采用广度来描述)是连通图的一种遍历策略。本程序用Matlab语言实现广度优先算法
代码片段和文件信息
function BFS_Maze(maze)
% maze:是迷宫矩阵,其中0表示可以去走的路
% 1表示障碍
% 2表示入口
% 3表示出口
% 5表示行走路径
% 0 2 0 0 1
% 0 1 1 0 1
% 0 1 3 0 1
% 0 1 0 0 1
% copyright: qbb 2013-3-12
if nargin == 0
maze = [0 2 0 0 1
0 1 1 0 1
0 1 3 0 1
0 1 0 0 1];
end
mazecopy = maze;
% 定义四个方向
directions = kron(eye(2)[-11]);
% 数组存储解的情况,I J Pre
remark = zeros(1003);
[IJ] = find(maze == 2);% 找到起点
remark(1:) = [IJ-1];
count = 2;
search(1);
sol = remark(count-1:);
while(sol(end3) > 0)
sol = [sol;remark(sol(end3):)];
end
mazecopy(sub2ind(size(maze) sol(2:end-11) sol(2:end-12))) = 5;
disp(mazecopy);
disp(sol);
function search(front)
x = remark(front1);
y = remark(fro
相关资源
- 原创毕业设计完工贴出来和大家分享
- matlab代码读电离层TEC文件
- 兰顿蚂蚁 MATLAB实现代码
- SVM(MATLAB).zip
- matlab开发-sigmoid
- matlab开发-信号平滑移动平均滤波器
- matlab开发-同步发电机的详细模型,包
- matlab开发-多层反向传播神经网络
- matlab开发-自适应调制fdmltegeneralcode
- matlab开发-Parrotminirones的模拟支持包
- matlab开发-FBM调制解调
- matlab开发-nnsysid
- matlab开发-使用gnewton-raphson方法查找任
-
matlab开发-带HFSSli
nk的RotmanLens设计 - matlab开发-SelfTuningRegulatorsSTR
- matlab开发-UR5控制Matlab
- 数据转换/信号处理中的基于Matlab 单边
- MATLAB图像加密解密GUI.zip
- 均值、高斯和中值去噪的matlab实现
- 基于电力电子变压器并联运行动态的
- 圆形阵列的方向图matlab程序
- Matlab 2018a for Mac 破解版
- 基于卡尔曼滤波的定位算法MATLAB程序
- 自适应信道的matlab实现
- 有限体积法MATLAB求解程序
- matlab AES直接可用代码
- 滑膜结构控制matlab仿真及程序
- 基于卡尔曼滤波算法的主从时钟同步
- 多机器人路径动态规划-带说明文档
- 多机器人编队控制matlab仿真程序
评论
共有 条评论