2020-11-21发表算法2 分钟读完 (大约322个字)图论:LCALCA: Lowest common ancestor 最近公共祖先 倍增求 LCA 预处理向上跳 $2^k$ 步的结果数组 f[k][x]。 求的时候先把两个点跳到一个深度。这里有一个特判,如果重合直接返回这个点。 然后log值从大往小枚举,两个点一起不断向上跳,直至父亲相同,直接返回父节点。 可以 $O(n)$ 预处理log值,把单次查询复杂度降到 $O(常数)$。 复杂度:预处理 $O(n \log n)$,查询 $O(1)$阅读更多