美文网首页
剑指offer 面试题50:树中两个结点的最低公共祖先

剑指offer 面试题50:树中两个结点的最低公共祖先

作者: qmss | 来源:发表于2016-06-08 18:14 被阅读0次

    题目:
    输入一棵数的两个结点,返回这两个结点的最低公共祖先

    解法:
    分析:如果是二叉树,可以使用递归的思路,从根结点开始,如果两个结点分布在左右两颗子树上,则即为所求;如果都在左子树,递归搜索左子树;如果都在右子树,递归搜索右子树。

    如果是一般的树,通过保存根节点到输入结点的路径,然后求这两条路径的最后一个公共子节点即可。问题的关键就在于求得这个路径:从根节点开始,深度优先遍历根节点的所有子节点,如果遇到了输入结点,即求得了路径。

    相关文章

      网友评论

          本文标题:剑指offer 面试题50:树中两个结点的最低公共祖先

          本文链接:https://www.haomeiwen.com/subject/wipjdttx.html