无根树转为有根数(图论) By ACReaper
给结点分别编号,输入这个无向图的的边,它只有n - 1条边,所以本质上也是树,但是我们还没有确定树的root的结点,下面我们来构造一颗树。
我们用邻接矩阵来存下整个图,这里用C++里的vector这中数据结构,它是可以变长的,所以存下之后,空间复杂度就不是n * n了,而是n。
给出一组数据:
一共8个结点,从0----7编号。我们假定以1为根结点构建树。
边数据如下:
0 1
0 2
0 3
1 4
1 5
5 6
5 7
在邻接矩阵中,他表示为:
0| 1 2 3
1| 0 4 5
2|0
3|0
4|1
5|6 7
6|5
7|5
下面给出代码实现:为了验证正确性,我让它以先序遍历输出了
#include <iostream.h>
#include <vector.h>
const int maxn = 1000;
vector<int> G[maxn];
int p[maxn];
int n;
void read_tree(){int u,v;scanf("%d",&n);for(int i = 1; i <= n - 1; i++){scanf("%d%d",&u,&v);G[u].push_back(v);G[v].push_back(u);}
}
void dfs(int u,int fa){int d = G[u].size();printf("%d ",u);for(int i = 0; i < d; i++){int v = G[u][i];if(v != fa){dfs(v,p[v] = u);}}
}
int main(){int root;while(scanf("%d",&root) != EOF){read_tree();p[root] = -1;dfs(root,-1);}return 0;
}
输出结果为:1 0 2 3 4 5 6 7
结果正确。
2013 04 22 By ACReaper
转载于:https://www.cnblogs.com/sixcoder/archive/2013/04/22/3825990.html
无根树转为有根数(图论) By ACReaper相关推荐
- 双连通分量(点-双连通分量边-双连通分量)
概念: 双连通分量有点双连通分量和边双连通分量两种.若一个无向图中的去掉任意一个节点(一条边)都不会改变此图的连通性,即不存在割点(桥),则称作点(边)双连通图. 一个无向图中的每一个极大点(边)双连 ...
- 【树形DP】树的重心详解+多组例题详解
目录 定义: 性质: 算法分析: POJ 1655 Balancing Act(求重心) POJ 3107 Godfather P1364 医院设置(树形DP) 定义: 树的重心也叫树的质心.对于一棵 ...
- MPB:西农焦硕组-土壤微生物响应环境变化的系统发育保守性和环境阈值
为进一步提高<微生物组实验手册>稿件质量,本项目新增大众评审环节.文章在通过同行评审后,采用公众号推送方式分享全文,任何人均可在线提交修改意见.公众号格式显示略有问题,建议电脑端点击文末阅 ...
- Network POJ-3694
Network POJ-3694 文章目录 Description 题意: 样例分析: 题解: 代码: Description A network administrator manages a la ...
- BZOJ.4337.[BJOI2015]树的同构(树哈希)
BZOJ 洛谷 \(Description\) 给定\(n\)棵无根树.对每棵树,输出与它同构的树的最小编号. \(n及每棵树的点数\leq 50\). \(Solution\) 对于一棵无根树,它的 ...
- oracle 行转列后列名,Oracle 多行转多列,列值转为列名
前段时间做调查问卷,客户创建自定义问卷内容,包括题目和选项内容; 之后需要导出问卷明细,,,,麻烦来咯 于是到网上到处搜索,没有直接结果;于是又找各种相似的,,终于功夫不负有心人 然后最终自己写出来了 ...
- 电子科技大学 图论期末复习 公式索引
title: 图论期末考试复习 date: 2020-08-17 09:01:09 tags: 参考资料:<图论及其应用> 高等教育出版社 张先迪 / 李正良 仅用于方便复习公式查阅,公式 ...
- 弱连通和强连通_基本图论-连通分量(强/弱联通 割点/边 边/点双)
前言 网上现存\(60\%\)的文章都有明显的误区,本文章经过多次修改,能保证正确性 本文涉及强连通分量.弱连通分量.割点.割边.边双.点双,属于基本图论范畴 在有着直接关联的基础上又有所不同,本文基 ...
- 电子科技大学 图论期末复习 公式快速索引
title: 图论期末考试复习 date: 2020-08-24 09:01:09 tags: 参考资料:<图论及其应用> 高等教育出版社 张先迪 / 李正良 仅用于复习参考,公式或多有误 ...
最新文章
- 在Ubuntu 14.04 64bit上安装配置sublime text 3(Build 3083)
- LeetCode Longest Common Prefix
- OpenShift 4 之Istio-Tutorial (7) 利用VirtualService的故障注入实现混沌测试Chaos Testing
- C++ 之父讨厌比特币
- HDU-1863-畅通工程(并查集)
- Qt4_组装丰富的积木
- Using C++ in Eclipse - Program file not Specified problem
- 基于vue3.0全家桶H5模板
- 从人体3D建模和测量入手,云之梦要用虚拟试衣解放量体师和服装导购员
- 一个计算机台式机的组装方案,组装机电脑配置推荐_台式组装机电脑配置推荐-系统城...
- PLC PID调试总结
- 用python的xlwings模块实现excel工作表批量隐藏和取消隐藏
- linux命令sm,Linux系统命令和使用技巧8则
- java中sof是什么意思_SOF是什么意思
- 计算机软件的著作权和专利权法律保护资料
- Solr单机版安装【实战】
- 计算机二级office考试题库操作题,计算机二级考试MSOffice考试题库ppt操作题附答案...
- 激动!!!他用脚拆开研究生录取通知书
- 基于 shell 的自动邮件任务监测器
- 利用Echarts制作地图(一)