【LeetCode】【HOT】236. 二叉树的最近公共祖先

文章目录

  • 【LeetCode】【HOT】236. 二叉树的最近公共祖先


package hot;class TreeNode{int val;TreeNode left;TreeNode right;TreeNode(int val){this.val = val;}
}public class Solution236 {public static void main(String[] args) {TreeNode node1 = new TreeNode(3);TreeNode node2 = new TreeNode(5);TreeNode node3 = new TreeNode(1);TreeNode node4 = new TreeNode(6);TreeNode node5 = new TreeNode(2);TreeNode node6 = new TreeNode(0);TreeNode node7 = new TreeNode(8);TreeNode node8 = new TreeNode(7);TreeNode node9 = new TreeNode(4);node1.left = node2;node1.right = node3;node2.left = node4;node2.right = node5;node3.left = node6;node3.right = node7;node5.left = node8;node5.right = node9;Solution236 solution = new Solution236();System.out.println(solution.method(node1, node2, node9).val);}private TreeNode method(TreeNode root, TreeNode p, TreeNode q){if(root == null || root == p || root == q){return root;}TreeNode left = method(root.left, p, q);TreeNode right = method(root.right, p, q);if(left == null && right == null) return null;if(left == null) return right;if(right == null) return left;return root;}
}//时间复杂度为 O(n)
//空间复杂度为 O(n)

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

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

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

  2. LeetCode 236. 二叉树的最近公共祖先(递归)

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

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

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

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

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

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

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

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

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

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

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

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

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

  9. leetcode 236. 二叉树的最近公共祖先LCA(后序遍历,回溯)

    LCA(Least Common Ancestors),即最近公共祖先,是指在有根树中,找出某两个结点u和v最近的公共祖先. 题目描述 给定一个二叉树, 找到该树中两个指定节点的最近公共祖先.百度百科 ...

最新文章

  1. iOS自定义转场动画
  2. Latex中数学公式中常用符号(持续更新)
  3. ASP.Net面向对象思想
  4. VS2008快捷键大全
  5. checking for C++ compiler default output file name
  6. IntelliJ IDEA+Mysql connecter/j JDBC驱动连接
  7. ajax响应码,ajax处理响应(三)(示例代码)
  8. python爬去segementfault上的博客文章
  9. 非空参数校验的工具类
  10. BigWorld用到的第三方库
  11. 大数据与传统数仓的区别?
  12. ADNI静息态功能核磁共振成像数据预处理总流程
  13. Java中Base64的解析
  14. react native 获取验证码
  15. 设备巡检的痛点和巡检方案
  16. php 数字转换英文,PHP将英文数字转换为阿拉伯数字
  17. 计算机访学面试,访学申请Skype面试经历
  18. 医学图像配准实现代码(matlab篇)
  19. 利用PP-OCR对街道门牌号进行识别
  20. 集成显卡 独立显卡 CPU核心显卡的区别

热门文章

  1. storm计数器(小白看懂系列)
  2. linux sort 排序 性能,Linux中sort 排序
  3. java 同步 实例_Java 1.4同步:仅允许方法的一个实例运行(非...
  4. mysql默认存储引擎的索引结构是_InnoDB引擎的索引和存储结构
  5. python googletrans_Python使用googletrans报错的解决方法
  6. mysql 排名_MySQL和Hive中的排名问题
  7. 唯一可译码判断c语言_单片机基础实验数码管原理与C语言
  8. c语言判断任意位数能否倒序数,C语言求助!一个三位数的逆序数,总是编不对...
  9. Linux Hung Task分析
  10. day 7-13 数据库的数据类型