其他分享
首页 > 其他分享> > 最近公共祖先LCA 解法

最近公共祖先LCA 解法

作者:互联网

附:邻接表存树

LCA问题简述

image
自己是自己的祖先

向上标记法

一般不用

倍增法

fa[i][j]表示从i开始,向上走2^j步所能走到的结点。0 <= j <= logn
depth[i]表示深度
哨兵:如果从i开始跳2^j步会跳过根结点,那么fa[i][j] = 0。depth[0] = 0
步骤:

模板代码


Tarjan——离线求LCA O(n+m)

在深度优先遍历时,将所有点分成三大类:

模板代码


标签:结点,标记,祖先,fa,depth,LCA,向上,解法
来源: https://www.cnblogs.com/kingwz/p/16101581.html