判断一个无向图是否为连通图的方法

判断一个无向图是否为连通图的方法

今天边肖给大家分享一个判断一个无向图是不是连通图的方法。边肖觉得内容挺好的,现在分享给大家,很有参考价值。有需要的朋友一起看看吧。

无向图的连通性

判断一个无向图是否是连通图。输入无向图的邻接矩阵。

输入

输入了几行。

第一行是正整数N(0N=3000),代表图中的点数。

接下来的n行,每一行有n个数据,每一行用一个空格隔开,代表邻接矩阵。

输出

好吧。是,否则不是。

测试输入

1 1 1

1 1 1

1 1 1

测试输出

源代码

# includestdio.h

#定义编号3002

int a[N][N];

int main()

{

int i,j,k,n;

scanf(%dn ,n);

for(I=0;在;我)

for(j=0;jn;j)

scanf(%d ,a[I][j]);

for(k=0;kn;k)

for(I=0;在;我)

如果(a[k][i])

for(j=0;jn;j)

if(a[i][k]a[k][j]){

a[I][j]=1;

}

for(I=0;在;我)

for(j=0;jn;j)

{

if(a[i][j] a[j][i]==0){

printf( no n );返回0;}

}

printf( yes n );

}

总结

这就是本文的全部内容。希望这篇文章的内容对你的学习或工作有一定的参考价值。谢谢你的支持。如果你想了解更多,请查看下面的相关链接。

判断一个无向图是否为连通图的方法