剑指Offer——二叉树的最近公共祖先(JS实现)
发布日期:2021-06-30 15:20:28 浏览次数:2 分类:技术文章

本文共 439 字,大约阅读时间需要 1 分钟。

题目描述

解题思路

  • 使用DFS的遍历思想进行遍历二叉树
  • 如果为空节点或p节点或q节点,直接返回该节点
  • 遍历的时候,看返回值,如果p和q都存在就返回当前的root节点,如果只有一个存在就反返回不为空的节点。

实现代码

var lowestCommonAncestor = function(root, p, q) {
if (root === null || root === p || root === q) {
return root; } let x = lowestCommonAncestor(root.left,p,q); let y = lowestCommonAncestor(root.right,p,q); if (x && y) {
return root; } else {
return x || y; // 返回存在的那一个 }};

转载地址:https://jiapy.blog.csdn.net/article/details/115293442 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:React中使用nanoid生成唯一的id
下一篇:剑指Offer——和为S的连续正数序列(JS实现)

发表评论

最新留言

逛到本站,mark一下
[***.202.152.39]2024年04月07日 16时45分30秒