Medium 236题 Lowest Common Ancestor of a Binary Tree
来源:互联网 发布:ubuntu php模块 编辑:程序博客网 时间:2024/04/30 01:33
Question:
Given a binary tree, find the lowest common ancestor (LCA) of two given nodes in the tree.
According to the definition of LCA on Wikipedia: “The lowest common ancestor is defined between two nodes v and w as the lowest node in T that has both v and w as descendants (where we allow a node to be a descendant of itself).”
_______3______ / \ ___5__ ___1__ / \ / \ 6 _2 0 8 / \ 7 4
For example, the lowest common ancestor (LCA) of nodes 5
and 1
is 3
. Another example is LCA of nodes 5
and 4
is 5
, since a node can be a descendant of itself according to the LCA definition.
Solution:
/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */public class Solution { public TreeNode lowestCommonAncestor(TreeNode root, TreeNode p, TreeNode q) { if(root==null||root==p||root==q) return root; TreeNode left=lowestCommonAncestor(root.left,p,q); TreeNode right=lowestCommonAncestor(root.right,p,q); if(left!=null) { if(right!=null) return root; else return left; } if(right!=null) { if(left!=null) return root; else return right; } return null; }}
0 0
- Medium 236题 Lowest Common Ancestor of a Binary Tree
- [Leetcode 236, Medium] Lowest Common Ancestor of a Binary Tree
- Lowest Common Ancestor of a Binary Tree
- Lowest Common Ancestor of a Binary Tree
- Lowest Common Ancestor of a Binary Tree
- Lowest Common Ancestor of a Binary Tree
- Lowest Common Ancestor of a Binary Tree
- Lowest Common Ancestor of a Binary Tree
- Lowest Common Ancestor of a Binary Tree
- Lowest Common Ancestor of a Binary Tree
- Lowest Common Ancestor of a Binary Tree
- Lowest Common Ancestor of a Binary Tree(***)
- Lowest Common Ancestor of a Binary Tree
- Lowest Common Ancestor of a Binary Tree
- Lowest Common Ancestor of a Binary Tree
- Lowest Common Ancestor of a Binary Tree
- Lowest Common Ancestor of a Binary Tree
- Lowest Common Ancestor of a Binary Tree
- oracle锁概念,阻塞
- 第二章:手工备份与恢复
- 第三章:手工完全恢复
- 第四章:手工不完全恢复
- 时钟滴答定时器(sysclk)用法详解
- Medium 236题 Lowest Common Ancestor of a Binary Tree
- OpenCV3.0 + vs2013 +win8
- java实现二叉树的递归方式遍历
- 23. Merge k Sorted Lists
- 【51单片机学习过程记录】8 中断 之定时计数器0的使用
- 怎么修改TOMCAT的默认主页为你自己项目的主页
- 勾股定理一日一证连载121
- Medium 28题 Implement strStr()
- 求生之路指令