实际上,用树的后序遍历就可以了。当访问到所求的节点A时,如果这两个节点不在一条线上,则它们必定分别在A的左子树和右子树上,后序遍历到第一个满足这个条件的节点就是所要求的节点A。另外,还必须对这两个节点在一条线上的情况,做特殊处理。

代码:
面试题: 找出二叉树上任意两个结点的最近共同父结点。static bool lca(Node *root, int va, int vb, Node *&result, Node* parrent)

相关文章:

  • 2022-02-07
  • 2022-02-04
  • 2021-06-05
  • 2021-12-24
  • 2022-03-07
  • 2021-09-27
  • 2021-08-14
  • 2022-01-09
猜你喜欢
  • 2022-02-03
  • 2021-10-16
  • 2021-09-10
  • 2022-12-23
  • 2021-07-30
  • 2021-06-19
相关资源
相似解决方案