公共祖先 孙鹏宇 2023-12-07 50 阅读1分钟 我们先找到p和q两个节点,然后向上去寻找这两个节点的交汇点,就是它们的最近公共祖先节点。 但是二叉树是不能从下往上遍历的,但是我们可以从下往上处理。 我们可以先从上往递归,如果遇到了p,q就用回溯把最近公共祖先节点向上返回,具体返回如下: 首先我们先从上往下遍历找到p,q节点。 如果左子树不为空,那么左子树就用可能是p节点,那么就向上返回。 如果右子树不为空,那么右子树就有可能是q节点,向上返回。 如果左右子树都不为空,那么当前节点就一定是最近公共祖先节点