LeetCode 235 Lowest Common Ancestor of a Binary Search Tree
来源:互联网 发布:淘宝团购怎么设置 编辑:程序博客网 时间:2024/05/22 06:17
题目描述
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.
分析
BST,性质是:根结点都比左结点大,比右结点小。所以给定两个结点,找公共祖先,就是找值在两个结点间的结点。
代码
public TreeNode lowestCommonAncestor(TreeNode root, TreeNode p, TreeNode q) { if (root == null || p == null || q == null) { return null; } int m = Math.min(p.val, q.val); int n = Math.max(p.val, q.val); while (root != null) { if (root.val < m) { root = root.right; } else if (root.val > n) { root = root.left; } else { return root; } } return null; }
3 0
- leetcode 235: 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
- leetcode-235-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
- [leetcode 235]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
- Leetcode 235 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
- leetcode 235: 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
- LeetCode 235: 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
- EditText里面输入两位小数
- leetcode:110 Balanced Binary Tree-每日编程第十九题
- 1-2.基础面试总结
- BLE 连接间隔
- 关于Android Studio提交代码到Git上的操作(Mac)
- LeetCode 235 Lowest Common Ancestor of a Binary Search Tree
- 走进Struts2验证器
- 2-1.毕向东_栈,堆,方法区的理解
- Cache-control使用Cache-control:private学习笔记
- Java之字符串处理
- 沉淀
- iOS--- UISegment属性
- 分分钟 掌握 Android Activity生命周期(图文+源码) AND 保存Activity状态
- 环境的一些配置部署