首页 > 代码库 > 第11章 11.1再谈树
第11章 11.1再谈树
11.1.1:有根树转无根树
#include<iostream> #include<cstring> #include<vector> #include<cstdio> #define maxn 1000 using namespace std; vector<int> G[maxn]; int p[maxn]; void read_tree() { int n,u,v; scanf("%d",&n); for(int i=0;i<n;i++) { scanf("%d%d",&u,&v); G[u].push_back(v); //与邻接表异曲同工 G[v].push_back(u); } } void dfs(int root,int fa) { int d=G[root].size(); for(int i=0;i<d;i++) { int v=G[root][i]; if(v!=fa) dfs(v,p[v]=root); } } int main() { for(int i=0;i<maxn;i++) G[i].clear(); memset(p,-1,sizeof p); read_tree(); dfs(1,-1); //p[root]=-1; return 0; }
dfs遍历图,
第11章 11.1再谈树
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。