遍历图

你。 提交于 2019-12-04 13:42:40
const int N=1e5+10;
vector<int> G[N];
void addedge(int u,int v){
	G[u].push_back(v);
	G[v].push_back(u);
}
int vis[N];
void dfs(int u){
	vis[u]=1;
	for(int i=0;i<G[u].size();i++){
		int v=G[u][i];
		if(vis[v])continue;
		dfs(v);
	}
}

queue<int> Q;
void bfs(int s){
	vis[s]=1;Q.push(s);
	while(!Q.empty()){
		int u=Q.front();Q.pop();
		for(int i=0;i<G[u].size();i++){
			int v=G[u][i];
			if(vis[v])continue;
			vis[v]=1;Q.push(v);
		}
	}
}!!!!!注意重边和自环
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!