「学习笔记」树相关算法

DSU on tree:保留重儿子答案,轻儿子暴力求。

线段树树上合并:\(O(n \log n)\)。考虑每次合并复杂度是O(删的点个数),点数是\(O(n \log n)\)的。

2-dfs序:dfs进出的时候给一个点,给一个+1和-1系数。可以表示根到点的链信息。

欧拉序:\(O(1)\) lca

直径的性质:

1 若点集\(A,B\),直径为\((a,b),(c,d)\),则\(A\cup B\)的直径为\((a,c),(a,d),(b,c),(b,d)\)中的一条

2 点集\(S\)中,离点\(u\)的最远点一定是某条直径某个端点

猜你喜欢

转载自www.cnblogs.com/hongzy/p/11617959.html