Tarjan的离线最小共同祖先算法

时间:2013-07-24 06:42:07

标签: data-structures

我目前正在阅读Tarjan关于如何获得二叉树中两个节点的最小公共祖先的算法。

我已经阅读了来自Wikipedia的伪代码,但我没有得到它的要点。我的意思是我无法在任何给定的二叉树上应用算法。我也尝试在Google上找到对每个步骤的一些解释,但我没有得到任何值得的东西。所以,如果有人可以帮助我理解这个算法在二叉树上是如何工作的,那将是非常可观的。

1 个答案:

答案 0 :(得分:1)

除了给定的二叉树之外,您还应该实现另一个名为disjoint set的数据结构来应用此算法。这个数据结构有三种主要方法,MAKE-SET,UNION,FIND-SET。我强烈建议您阅读“算法简介”中的第21章“不相交集的数据结构”,以便更好地理解。