【LeetCode】【HOT】236. 二叉树的最近公共祖先(递归)
【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. 二叉树的最近公共祖先(递归)相关推荐
- leetcode 236. 二叉树的最近公共祖先 递归解法 c语言
如题: 给定一个二叉树, 找到该树中两个指定节点的最近公共祖先.百度百科中最近公共祖先的定义为:"对于有根树 T 的两个结点 p.q,最近公共祖先表示为一个结点 x, 满足 x 是 p.q ...
- LeetCode 236. 二叉树的最近公共祖先(递归)
题目描述 给定一个二叉树, 找到该树中两个指定节点的最近公共祖先. 百度百科中最近公共祖先的定义为:"对于有根树 T 的两个结点 p.q,最近公共祖先表示为一个结点 x,满足 x 是 p.q ...
- 力扣(LeetCode)236. 二叉树的最近公共祖先(C语言)
一.环境说明 本文是 LeetCode 236. 二叉树的最近公共祖先,使用c语言实现. 递归. 测试环境:Visual Studio 2019. 二.代码展示 精简代码: struct TreeNo ...
- LeetCode二叉树系列——236.二叉树的最近公共祖先
一.题目描述: 236. 二叉树的最近公共祖先 给定一个二叉树, 找到该树中两个指定节点的最近公共祖先. 百度百科中最近公共祖先的定义为:"对于有根树 T 的两个节点 p.q,最近公共祖先表 ...
- Suzy找到实习了吗 Day 21 | 二叉树进行中:530. 二叉搜索树的最小绝对差,501. 二叉搜索树中的众数,236. 二叉树的最近公共祖先
530. 二叉搜索树的最小绝对差 题目 给你一个二叉搜索树的根节点 root ,返回 树中任意两不同节点值之间的最小差值 .差值是一个正数,其数值等于两值之差的绝对值. solution # Defi ...
- 最近公共祖先_leetcode No.236 二叉树的最近公共祖先
承接二叉搜索树的最近公共祖先. 题目链接: 二叉树的最近公共祖先 - 力扣(LeetCode)leetcode-cn.com 题目描述: 给定一个二叉树, 找到该树中两个指定节点的最近公共祖先. 百 ...
- LeetCode 236. 二叉树的最近公共祖先
文章目录 解法1:保存祖先节点+逐个判断 解法2:深度优先遍历 解法3:记录祖先节点 https://leetcode-cn.com/problems/lowest-common-ancestor-o ...
- 最近公共祖先_[LeetCode] 236. 二叉树的最近公共祖先
题目链接: https://leetcode-cn.com/problems/lowest-common-ancestor-of-a-binary-tree 难度:中等 通过率:57.2% 题目描述: ...
- leetcode 236. 二叉树的最近公共祖先LCA(后序遍历,回溯)
LCA(Least Common Ancestors),即最近公共祖先,是指在有根树中,找出某两个结点u和v最近的公共祖先. 题目描述 给定一个二叉树, 找到该树中两个指定节点的最近公共祖先.百度百科 ...
最新文章
- iOS自定义转场动画
- Latex中数学公式中常用符号(持续更新)
- ASP.Net面向对象思想
- VS2008快捷键大全
- checking for C++ compiler default output file name
- IntelliJ IDEA+Mysql connecter/j JDBC驱动连接
- ajax响应码,ajax处理响应(三)(示例代码)
- python爬去segementfault上的博客文章
- 非空参数校验的工具类
- BigWorld用到的第三方库
- 大数据与传统数仓的区别?
- ADNI静息态功能核磁共振成像数据预处理总流程
- Java中Base64的解析
- react native 获取验证码
- 设备巡检的痛点和巡检方案
- php 数字转换英文,PHP将英文数字转换为阿拉伯数字
- 计算机访学面试,访学申请Skype面试经历
- 医学图像配准实现代码(matlab篇)
- 利用PP-OCR对街道门牌号进行识别
- 集成显卡 独立显卡 CPU核心显卡的区别
热门文章
- storm计数器(小白看懂系列)
- linux sort 排序 性能,Linux中sort 排序
- java 同步 实例_Java 1.4同步:仅允许方法的一个实例运行(非...
- mysql默认存储引擎的索引结构是_InnoDB引擎的索引和存储结构
- python googletrans_Python使用googletrans报错的解决方法
- mysql 排名_MySQL和Hive中的排名问题
- 唯一可译码判断c语言_单片机基础实验数码管原理与C语言
- c语言判断任意位数能否倒序数,C语言求助!一个三位数的逆序数,总是编不对...
- Linux Hung Task分析
- day 7-13 数据库的数据类型