LCA,最近公共祖先,实现有多种不同的方法,在树上的问题中有着广泛的应用,比如说树上的最短路之类。 LCA的实现方法有很多,比如RMQ、树链剖分等。 今天来讲其中实现较为简单的三种算法: RMQ+时间戳、树上倍增(类似二分步长)、Tarjan算法(DFS+并查集)。