给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。

百度百科中最近公共祖先的定义为:“对于有根树 T 的两个结点 p、q,最近公共祖先表示为一个结点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。”

例如,给定如下二叉树: root = [3,5,1,6,2,0,8,null,null,7,4]

示例 1:

输入: root = [3,5,1,6,2,0,8,null,null,7,4], p = 5, q = 1输出: 3解释: 节点 5 和节点 1 的最近公共祖先是节点 3。

示例 2:

输入: root = [3,5,1,6,2,0,8,null,null,7,4], p = 5, q = 4输出: 5解释: 节点 5 和节点 4 的最近公共祖先是节点 5。因为根据定义最近公共祖先节点可以为节点本身。

说明:

  • 所有节点的值都是唯一的。
  • p、q 为不同节点且均存在于给定的二叉树中。

最近公共祖先_LeetCode 236. 二叉树的最近公共祖先相关推荐

  1. 【LeetCode】【HOT】236. 二叉树的最近公共祖先(递归)

    [LeetCode][HOT]236. 二叉树的最近公共祖先 文章目录 [LeetCode][HOT]236. 二叉树的最近公共祖先 package hot;class TreeNode{int va ...

  2. 力扣(LeetCode)236. 二叉树的最近公共祖先(C语言)

    一.环境说明 本文是 LeetCode 236. 二叉树的最近公共祖先,使用c语言实现. 递归. 测试环境:Visual Studio 2019. 二.代码展示 精简代码: struct TreeNo ...

  3. Suzy找到实习了吗 Day 21 | 二叉树进行中:530. 二叉搜索树的最小绝对差,501. 二叉搜索树中的众数,236. 二叉树的最近公共祖先

    530. 二叉搜索树的最小绝对差 题目 给你一个二叉搜索树的根节点 root ,返回 树中任意两不同节点值之间的最小差值 .差值是一个正数,其数值等于两值之差的绝对值. solution # Defi ...

  4. LeetCode二叉树系列——236.二叉树的最近公共祖先

    一.题目描述: 236. 二叉树的最近公共祖先 给定一个二叉树, 找到该树中两个指定节点的最近公共祖先. 百度百科中最近公共祖先的定义为:"对于有根树 T 的两个节点 p.q,最近公共祖先表 ...

  5. 最近公共祖先_leetcode No.236 二叉树的最近公共祖先

    承接二叉搜索树的最近公共祖先. 题目链接: 二叉树的最近公共祖先 - 力扣(LeetCode)​leetcode-cn.com 题目描述: 给定一个二叉树, 找到该树中两个指定节点的最近公共祖先. 百 ...

  6. LeetCode 236. 二叉树的最近公共祖先

    文章目录 解法1:保存祖先节点+逐个判断 解法2:深度优先遍历 解法3:记录祖先节点 https://leetcode-cn.com/problems/lowest-common-ancestor-o ...

  7. leetcode 236. 二叉树的最近公共祖先 递归解法 c语言

    如题: 给定一个二叉树, 找到该树中两个指定节点的最近公共祖先.百度百科中最近公共祖先的定义为:"对于有根树 T 的两个结点 p.q,最近公共祖先表示为一个结点 x, 满足 x 是 p.q ...

  8. [leetcode]236.二叉树的最近公共祖先

    给定一个二叉树, 找到该树中两个指定节点的最近公共祖先. 百度百科中最近公共祖先的定义为:"对于有根树 T 的两个节点 p.q,最近公共祖先表示为一个节点 x,满足 x 是 p.q 的祖先且 ...

  9. 最近公共祖先_[LeetCode] 236. 二叉树的最近公共祖先

    题目链接: https://leetcode-cn.com/problems/lowest-common-ancestor-of-a-binary-tree 难度:中等 通过率:57.2% 题目描述: ...

最新文章

  1. Ubuntu下非常给力的下载工具–aira2
  2. 小麦的一生矢量图收藏贴-从种子的萌发到完熟
  3. Live Writer
  4. textmetric结构
  5. django按钮点击后想刷新当前页面的view写法
  6. C#经典名著:《C#入门经典》(第4版)
  7. mybatis plus关联查询_Mybatis 和 Hibernate 持久层框架之间的区别是啥?
  8. jqueryui 1.8.19引用顺序(及var basePrototype = new base()错误)
  9. sql数据库去重语法_浅谈sql数据库去重_MySQL
  10. openpyxl 2.5.0中文文档
  11. ThinkPad E550 Catalina用OC换Clover引导的过程(支持Mac Update)
  12. 自己集成的android容联云IMdemo效果展示
  13. linux centos7下源码 tar安装mysql5.7.22或mysql5.7.20 图文详解
  14. SparkSteaming细节问题
  15. JDBC【数据库连接池、DbUtils框架、分页】
  16. 详细解释:Epoch、batch_size批处理大小、迭代次数之间的关系
  17. string和字符数组的reverse函数
  18. 安装oracle12f 闪退,安装oracle ,调用图形界面java卡死,
  19. 信息系统项目管理师(进阶篇)-信息化与信息系统
  20. 关于Google多账户登录

热门文章

  1. 笔记:Java 性能优化权威指南 第6章 Java 应用性能分析技巧
  2. 【转载】自动化测试:为什么受伤的总是我?
  3. 字符串匹配算法总结(转)
  4. 2018年广西计算机一级,关于2018年上半年广西壮族自治区全国计算机等级考试报名工作的通知...
  5. [Swift]LeetCode288. 唯一单词缩写 $ Unique Word Abbreviation
  6. [UE4]函数和事件的区别
  7. 操作系统--进程管理1--单个CPU情况
  8. 【转】 C#学习笔记14——Trace、Debug和TraceSource的使用以及日志设计
  9. windows server 2008 - 隐藏磁盘分区 (2)
  10. 关于魔方里的工具修改方法