在matlab中怎样求矩阵中任意两点间的距离呢用矩阵表示一个图形,矩阵中为1的部分表示该两点间有连接,怎样根据矩阵来求任意两点间的最短距离的数量啊? 例如矩阵为0 1 0 1 0 01 0 1 0 0 00 1 0 1 1

来源:学生作业帮助网 编辑:作业帮 时间:2024/11/15 05:01:12

在matlab中怎样求矩阵中任意两点间的距离呢用矩阵表示一个图形,矩阵中为1的部分表示该两点间有连接,怎样根据矩阵来求任意两点间的最短距离的数量啊? 例如矩阵为0 1 0 1 0 01 0 1 0 0 00 1 0 1 1
在matlab中怎样求矩阵中任意两点间的距离呢
用矩阵表示一个图形,矩阵中为1的部分表示该两点间有连接,怎样根据矩阵来求任意两点间的最短距离的数量啊? 例如矩阵为
0 1 0 1 0 0
1 0 1 0 0 0
0 1 0 1 1 1
1 0 1 0 1 0
0 0 1 1 0 1
0 0 1 0 1 0
1到2的距离就为1,点1到3的话就有好几种可能,可以经过2到3,距离为2;经过4到3,距离也为2;或者经过4,5再到3,距离为3.对1到3来说,最短距离为2.以此类推,求出矩阵中任意两点的最短距离并输出.我的数据比较大,是256*256的矩阵.
急求高手们多多指点,不胜感激!50分不成敬意

在matlab中怎样求矩阵中任意两点间的距离呢用矩阵表示一个图形,矩阵中为1的部分表示该两点间有连接,怎样根据矩阵来求任意两点间的最短距离的数量啊? 例如矩阵为0 1 0 1 0 01 0 1 0 0 00 1 0 1 1
根据lz要求,最合适的是floyd算法
下面就是根据这个算法写的代码,lz可以自己改成函数
D=[0 1 0 1 0 0
1 0 1 0 0 0
0 1 0 1 1 1
1 0 1 0 1 0
0 0 1 1 0 1
0 0 1 0 1 0];
n=length(D);
for k=1:n
for i=1:n
for j=1:n
if 0