LCA 最近公共祖先
文章平均质量分 78
Lazines_by
好吧,我要工作了
展开
-
LCA 学习
学习了LCA的两种解法:用RMQ 和 trajan离线解法现讲一下离线解法:个人觉得这个解法就是从根节点开始DFS,然后到达底部之后再回溯,回溯的时候在把一个一个的点加入并查集,这样的话保证的是在找到两个点之前不会把他们的lca的祖先压入并查集,至于到底是怎么回溯的,引用: 0 | 1原创 2017-03-29 16:03:06 · 339 阅读 · 0 评论 -
LCA 离线tarjan算法
对于最近公共祖先问题,我们先来看这样一个性质,当两个节点(u,v)的最近公共祖先是x时,那么我们可以确定的说,当进行后序遍历的时候,必然先访问完x的所有子树,然后才会返回到x所在的节点。这个性质就是我们使用Tarjan算法解决最近公共祖先问题的核心思想。 同时我们会想这个怎么能够保证是最近的公共祖先呢?我们这样看,因为我们是逐渐向上回溯的,所以我们每次访问完某个节点x的一棵子树,我们原创 2018-01-26 18:01:08 · 207 阅读 · 0 评论