原文:树的重心的应用

关于树的重心的一些性质都没有理解的很好 在此总结一下。 树的重心的应用 点分治 点分树 动态维护树的重心等等。 关于点分治的复杂度一论 这个其实是套用了 分治的思想 或者是CDQ 的思想 对区间不断的进行递归分治,这个分治可以很快的分出断点mid 而在树上我们就无法快速得出这个mid了。 分治区间的复杂度证明 每次都将区间二分 这样不断的分支下去 就是logn层 每层我们对每个点进行O 的操作的 ...

2019-08-13 14:11 1 440 推荐指数:

查看详情

关于重心

(由于本人太菜所以最近一直在补一些基础算法……) 求重心的基本思想就是从每个节点出发分别遍历一遍,统计max_part,其中能够使得max_part最小的就是重心 另外:一棵有根至多有两个重心,这个结论好像有些题可以用(比如BZOJ4337,不过那个数据太水只有50(什么暴力乱搞 ...

Sat Oct 06 22:24:00 CST 2018 0 2312
重心

先任选一个节点作为根,将无根转换成有根,代码实现是DFS。 以图9-13的节点i为例,因为是任意选择一个节点做DFS,有以下几种可能: 1.以节点i为根节点,有三个子树 2.以左下方节点为父节点,访问节点i,有两个子树 3.以右下方节点为父节点,访问节点i,有两个子树 4. ...

Tue Sep 13 17:05:00 CST 2016 0 4670
重心的性质及其证明

想了我好长时间。。。 重心如果不唯一,则至多有两个,且这两个重心相邻 先假设有两个重心 \(u,v\) 不相邻,考虑它们之间的这条路径,则至少有三个节点(以下的 “它们之间的路径” 都是指 \(u,v\) 之间的路径) 设 \(u\) 的不包含它们之间的这条路径 ...

Sat Aug 22 04:57:00 CST 2020 9 1200
重心 学习笔记

第1.5版 关于重心 有配图 有文字讲解 关于Godfather 有AC代码 文字说明 关于centroid 本人蒟蒻这晚上只写了55pts(以后会有AC代码的) 新增20pts二叉树 手把手教你分析时间复杂度 考场写暴力得省一心 ...

Wed Feb 12 07:44:00 CST 2020 0 268
的直径及重心

1.的直径 树上最长的简单路径即为的直径。 求的直径的方法就是在树上任选一点u,求距离点u最远的点y,再求距离点y最远的点s,点y到点s的距离即为的直径。 View Code 2.重心 若有一点,其所有子树中最大子树的节点数最少,则该点 ...

Fri May 05 05:05:00 CST 2017 1 3394
浅谈重心

浅谈的直径 定义:   树上一节点最大子树的节点数最小; 性质:   1.删除重心后所得的所有子树,节点数不超过原的1/2,一棵最多有两个重心;   2.中所有节点到重心的距离之和最小,如果有两个重心,那么他们距离之和相等;   3.两个通过一条边合并,新的重心在原两个 ...

Sun Jul 28 19:57:00 CST 2019 2 902
的直径、重心、中心

的直径 的直径,是指树上最长的一条链。 求的直径有两种方法 \(1.DP\):\(d1[u]\)表示\(u\)到达子树中叶子节点的最长链,\(d2[u]\)表示\(u\)到达子树中叶子节点的次长链,两条链不能有交集,只需要对每个节点做以下更新同时维护最大值最小值即可 这样维护保证 ...

Thu Oct 24 00:04:00 CST 2019 0 582
重心(模板)

代码定义:重心也叫的质心。对于一棵n个节点的无根,找到一个点,使得把变成以该点为根的有根时,最大子树的结点数最小。换句话说,删除这个 [1] 点后最大连通块(一定是)的结点数最小。 性质: 中所有点到某个点的距离和中,到重心的距离和是最小 ...

Tue Jul 09 18:31:00 CST 2019 0 1918
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM