发布网友
发布时间:2022-04-24 01:58
共1个回答
热心网友
时间:2023-10-20 10:56
如何用matlab求最短路径?
运行并分析了题主给出的代码,a=a+((a==0)-eye(n))*M 这个代码出错,其出错的原因是a和eye(n)的矩阵维度不一致。
因为题主一开始,就出现了误解,对a定义为zeros(n),而实际a是二维矩阵,应该为
a=zeros(n,n)
同理,path=zeros(n) 也是错误的,应该为
path=zeros(n,n)
附带说明,用matlab求最短路径,可以用下列函数就可以完成,即
graph() %对象表示无向图,无向图具有连接相应节点的无向边。
shortestpath() %计算从源节点 s 处开始到目标节点 t 处结束的最短路径。
plot() %绘制一个有向图
下面为运行后的一个图例。
热心网友
时间:2023-10-20 10:56
如何用matlab求最短路径?
运行并分析了题主给出的代码,a=a+((a==0)-eye(n))*M 这个代码出错,其出错的原因是a和eye(n)的矩阵维度不一致。
因为题主一开始,就出现了误解,对a定义为zeros(n),而实际a是二维矩阵,应该为
a=zeros(n,n)
同理,path=zeros(n) 也是错误的,应该为
path=zeros(n,n)
附带说明,用matlab求最短路径,可以用下列函数就可以完成,即
graph() %对象表示无向图,无向图具有连接相应节点的无向边。
shortestpath() %计算从源节点 s 处开始到目标节点 t 处结束的最短路径。
plot() %绘制一个有向图
下面为运行后的一个图例。
热心网友
时间:2023-10-20 10:56
如何用matlab求最短路径?
运行并分析了题主给出的代码,a=a+((a==0)-eye(n))*M 这个代码出错,其出错的原因是a和eye(n)的矩阵维度不一致。
因为题主一开始,就出现了误解,对a定义为zeros(n),而实际a是二维矩阵,应该为
a=zeros(n,n)
同理,path=zeros(n) 也是错误的,应该为
path=zeros(n,n)
附带说明,用matlab求最短路径,可以用下列函数就可以完成,即
graph() %对象表示无向图,无向图具有连接相应节点的无向边。
shortestpath() %计算从源节点 s 处开始到目标节点 t 处结束的最短路径。
plot() %绘制一个有向图
下面为运行后的一个图例。