%% **************有向图的关联矩阵和邻接矩阵********************
% 输入参数:F 邻接矩阵或关联矩阵 f转换参数,0表示邻接矩阵转换为关联矩阵 //
% 1表示关联矩阵转换为邻接矩阵 //
% 输出: W 转换所得矩阵 //
%%
function W = mattransf(F, f)
if f == 0 %邻接矩阵转换为关联矩阵
m = sum(sum(F));
n = size(F);
W = zeros(n,m);
k = 1;
for i =1:n
for j = 1:n
if F(i,j)~=0 && j>i
W(i,k) = 1; %关联矩阵始点值为1
W(j,k) = -1; %关联矩阵终点值为-1
k= k+1;
end
end
end
elseif f == 1 %关联矩阵转换为邻接矩阵
m = size(F,2);
n = size(F,1);
W = zeros(n);
for i = 1:m
a = find(F(:,i)~=0);
if F(a(1),i) == 1
W(a(1),a(2)) = 1;
else
W(a(2),a(1)) = 1;
end
end
else
fprint('Please input the right value of f');
end
有向图的关联矩阵和邻接矩阵
最新推荐文章于 2025-04-14 14:20:45 发布
本文介绍了一种算法,用于在有向图的邻接矩阵与关联矩阵之间进行转换。包括从邻接矩阵到关联矩阵的转换,以及从关联矩阵到邻接矩阵的逆向转换过程。

4万+

被折叠的 条评论
为什么被折叠?



