AcWing 846:树的重心 ← 链式前向星 or 邻接表
【题目来源】
【问题描述】
给定一颗树,树中包含 n 个结点(编号 1∼n)和 n−1 条无向边。
请你找到树的重心,并输出将重心删除后,剩余各个连通块中点数的最大值。
重心定义:重心是指树中的一个结点,如果将这个点删除后,剩余各个连通块中点数的最大值最小,那么这个节点被称为树的重心。
【输入格式】
第一行包含整数 n,表示树的结点数。
接下来 n−1 行,每行包含两个整数 a 和 b,表示点 a 和点 b 之间存在一条边。
【输出格式】
输出一个整数 m,表示将重心删除后,剩余各个连通块中点数的最大值。
【数据范围】
1≤n≤10^5
【输入样例】
9
1 2
1 7
1 4
2 8
2 5
4 3
3 9
4 6
【输出样例】
4
【算法分析】
● 链式前向星:
● 邻接表存“树”:
【算法代码一:链式前向星】
本题代码与“东方博宜OJ 2191:树的重心(2)”相同。详见:https://blog.csdn.net/hnjzsyjyj/article/details/155837166
【算法代码二:邻接表】
【参考文献】

浙公网安备 33010602011771号