树 链 剖 分
树链剖分树链剖分用于将树分割成若干条链的形式,以维护树上路径的信息。定义重子节点 :其子节点中子树最大的子结点。如果有多个子树最大的子结点,取其一。如果没有子节点,就无重子节点。轻子节点: 表示剩余的所有子结点。从这个结点到重子节点的边为 重边。到其他轻子节点的边为 轻边。若干条首尾衔接的重边构成 重链。初始化两遍dfs第一次处理每个节点的dep(深度) , fa(父亲节点) ,sz(子树大小), son(重链结点)void dfs1(int u , int v , int de )
原创
2022-04-13 09:05:35 ·
364 阅读 ·
0 评论