求lca的几种方法

1.一个点跳到根节点,且标记沿途的节点。另一个点跳父亲直到跳到被标记的节点。

这种方法在一些题内有用,比如LNOI2014 LCA

2.一个点跳到和另一个点相同深度的地方。并且两个节点一起跳直到跳到相同的点。

3.2做法可以使用倍增优化。使用倍增加速跳深度的过程。

4.树剖lca。常数较小。

5.tarjan算法。

6.lca转rmq,这样子时间复杂度可以被优化成O(n)

原文地址:https://www.cnblogs.com/cszmc2004/p/12937778.html