dfs判断一个无向图是不是连通图

 有n个顶点,编号为1~n,用dfs遍历一遍邻接矩阵,若遍历到的顶点个数等于n,则证明改无向图是一个连通图

#include
using namespace std;
const int maxn=1005;
bool vis[maxn];
vectorG[maxn];
int n,m,k,number=0;
void dfs(int tmp) {
	vis[tmp]=1;
	cnt++;
	for(int i=0; i>n>>m;
	while(m--){
		cin>>a>>b;
		G[a].push_back(b);
		G[b].push_back(a);
	}
	dfs(1);
	if(number==n) cout<<"YES"<

 

你可能感兴趣的:(深搜,图论)