资源简介

不仅判断图的连通性,而且程序还能求出该图的连通块数,并指出每个顶点分别属于哪个连通块。

资源截图

代码片段和文件信息

function [SQ]=concom(G)
% 图的连通性计算
% function [SQ]=concom(G)
% G 图的邻接矩阵
% S 图的连通块数 Q 图的顶点所在的块号

n=size(G1);
m=sum(sum(G))/2;
S=0;j=1;C=1;
Q=zeros(n1);
for i=1:n
    for j=(i+1):n
        if G(ij)==1  % 两者之间有边
        if Q(i)==Q(j) % 两者之间有边则属于同一块
            if Q(i)==0
                Q(i)=C;Q(j)=C; 
                C=C+1;
                S=S+1;
            end
        else
            if Q(i)==0 % 若为标记i则与j在同一块
                Q(i)=Q(j);
            elseif Q(j)==0 % 若为标记j则与i在同一块
                Q(j)=Q(i);
            else   % 若两者相连,但标记为不同的块,则进行块合并
                for k=1:n
                    if Q(k)==Q(i)
                        Q(k)=Q(j); % 将两块合并
                    end
                end
                S=S-1;
            end
        end
        end

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件          70  2016-05-16 20:33  main.m
     文件         995  2009-08-28 16:34  concom.m

评论

共有 条评论