如何计算最短路径图吗?

57视图(30天)
charu shree
charu shree 2023年4月20日14:46
评论道: 沃尔特·罗伯森 2023年4月21日23:04
你好所有的,我试图计算下面图中的最短路径正确但没有得到它。
假设有15个小电话塔可以作为源和目标和1大移动塔只会作为目标,模型如下:
我的查询是如何计算源(sr)和目标之间的最短路径(ta)这张图。任何帮助在这方面将高度赞赏。
diff_smt = 15;%不同数量的小电话塔
bmt = 1;%只有一个大目标移动塔
idx_bmt = diff_smt + 1;%指数大的移动塔(目标)
sr = [1 1 1 2 2 2 3 3 4 4 4 5 5 5 6 6 6 7 7 7 8 8 8 9 9 9 10 10 10 11 11 12 12 13 13 13 14 14 15 15 15);%的各种可能的来源
ta =兰迪([2、16),1,长度(sr));%不同可能的目标
老图G = (ta);
情节(G);

答案(1)

马特·J
马特·J 2023年4月20日在十五12
您可以使用 shortestpath 命令。
13个评论
沃尔特·罗伯森
沃尔特·罗伯森 2023年4月21日23:04
sr = [1 2 2 2 3 3 3 4 5];
ta = [2 3 6 8 4 6 7 6 6);
老图G = (ta);
情节(G)
但在老建筑中每个节点连接到每个节点的助教,所以它们之间的距离总是1。
如果你是要求每个节点和其他节点之间的路径,将可行与shortestpathtree循环
节点= 1:8;
numnodes =长度(节点);
idx = 1: numnodes
专注=节点(idx);
TR = shortestpathtree (G,专注setdiff(节点,聚焦));
p =情节(G);
突出(p, TR,“EdgeColor”,“r”);
标题(“节点”+关注)
结束

登录置评。

类别

找到更多的在图和网络算法帮助中心文件交换

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!

翻译的