LeetCode_235Lowest Common Ancestor of a Binary Search Tree
来源:互联网 发布:用vb怎么做小游戏 编辑:程序博客网 时间:2024/06/05 01:55
Given a binary search tree (BST), find the lowest common ancestor (LCA) of two given nodes in the BST.
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).”
_______6______ / \___2__ ___8__/ \ / \0 _4 7 9 / \ 3 5
For example, the lowest common ancestor (LCA) of nodes 2 and 8 is 6. Another example is LCA of nodes 2 and 4 is 2, since a node can be a descendant of itself according to the LCA definition.
如果root小于min(p, q),那么LCA肯定在右子树上,那么递归
如果max(p, q)小于root,那么LCA肯定在左子树上,那么递归
如果root在pq之间,那么root肯定为LCA
public TreeNode lowestCommonAncestor(TreeNode root, TreeNode p, TreeNode q) { if(root == null) return null; int min = p.val > q.val? q.val:p.val; int max = p.val > q.val? p.val:q.val; if(max < root.val){ return lowestCommonAncestor(root.left, p, q); } if(min > root.val){ return lowestCommonAncestor(root.right, p, q); } return root; }
0 0
- LeetCode_235Lowest Common Ancestor of a Binary Search Tree
- LeetCode_Lowest Common Ancestor of a Binary Search Tree (Binary Tree)
- Lowest Common Ancestor of a Binary Search Tree
- leetcode 235: Lowest Common Ancestor of a Binary Search Tree
- Lowest Common Ancestor of a Binary Search Tree (235)
- Lowest Common Ancestor of a Binary Search Tree
- Lowest Common Ancestor of a Binary Search Tree
- Lowest Common Ancestor of a Binary Search Tree leetcode235
- LeetCode 235. Lowest Common Ancestor of a Binary Search Tree
- Lowest Common Ancestor of a Binary Search Tree
- Lowest Common Ancestor of a Binary Search Tree
- leetcode: Lowest Common Ancestor of a Binary Search Tree
- [leetcode][dfs] Lowest Common Ancestor of a Binary Search Tree
- [leetcode] 235.Lowest Common Ancestor of a Binary Search Tree
- Lowest Common Ancestor of a Binary Search Tree
- Lowest Common Ancestor of a Binary Search Tree
- 【LeetCode】235 Lowest Common Ancestor of a Binary Search Tree
- [LeetCode]235.Lowest Common Ancestor of a Binary Search Tree
- Core Animaiton - 7
- OpenGL性能优化
- delete 和 delete []的真正区别
- Spark SQL and DataFrame Guide(1.4.1)——之DataFrames
- C#中Queue<T>类的使用以及部分方法的源码分析
- LeetCode_235Lowest Common Ancestor of a Binary Search Tree
- LeetCode题解——Divide Two Integers
- 51单片机一位数码管汇编程序
- UML学习入门(转)
- weblogic的节点管理器的配置
- php常用函数
- java Socket通信使用BufferedReader和BufferedWriter的注意事项
- springmvc-带预览的异步上传图片功能
- js 之prototype 理解