我想计算图的直径,这意味着 G 的任意两个顶点之间的最大距离。
cm是图的连通矩阵,图的直径应该在变量a中。但是 MATLAB 给了我一些错误消息“输入参数应该是一个稀疏数组。”
我不能使用 graphshortestpath 函数来计算直径吗?那我应该怎么做呢?
cm = [0,1,1,1,0;1,0,0,1,0;0,1,0,0,0;1,0,0,0,0;0,0,0,0,0];
bg = biograph(cm);
a = 1;
for i = 1:4
for j = (i+1):5
[dist,path,pred] = graphshortestpath(bg,i,j)
if a<=dist
a = dist
end
end
end