LintCode : 验证二叉查找树
来源:互联网 发布:淘宝客 第三方服务商 编辑:程序博客网 时间:2024/06/10 09:57
验证二叉查找树
- 描述
- 笔记
- 数据
- 评测
给定一个二叉树,判断它是否是合法的二叉查找树(BST)
一棵BST定义为:
- 节点的左子树中的值要严格小于该节点的值。
- 节点的右子树中的值要严格大于该节点的值。
- 左右子树也必须是二叉查找树。
- 一个节点的树也是二叉查找树。
您在真实的面试中是否遇到过这个题?
Yes
样例
一个例子:
2 / \1 4 / \ 3 5
上述这棵二叉树序列化为 {2,1,4,#,#,3,5}
.
标签
相关题目
- 递归方式实现,需要注意左右子树的上下界定
/** * Definition of TreeNode: * public class TreeNode { * public int val; * public TreeNode left, right; * public TreeNode(int val) { * this.val = val; * this.left = this.right = null; * } * } */public class Solution { /** * @param root: The root of binary tree. * @return: True if the binary tree is BST, or false */ public static boolean isValidBST(TreeNode root) { // write your code here if (root == null) { return true; } return isValidBSTRec(root, Long.MIN_VALUE, Long.MAX_VALUE); } public static boolean isValidBSTRec(TreeNode root, long low, long up) { if (root == null) { return true; } // 不在范围内 if (root.val <= low || root.val >= up) { return false; } return isValidBSTRec(root.left, low, root.val) && isValidBSTRec(root.right, root.val, up); }}
0 0
- LintCode:验证二叉查找树
- LintCode : 验证二叉查找树
- Lintcode 验证二叉查找树
- 验证二叉查找树-LintCode
- 验证二叉查找树-LintCode
- lintcode-验证查找二叉树-95
- lintcode(95)验证二叉查找树
- LintCode 97 验证二叉查找树
- LINTCODE —— 验证二叉查找树
- LintCode-分治-验证二叉查找树
- 验证二叉查找树—LintCode
- LintCode 95-验证二叉查找树
- lintcode validate-binary-search-tree 验证二叉查找树
- **[Lintcode]Validate Binary Search Tree 验证二叉查找树
- lintcode 二叉查找树总结
- lintcode二叉查找树总结
- 验证满二叉树-LintCode
- [LintCode]95.验证二叉查找树(二叉排序树/二叉搜索树) 中序遍历
- 优维科技出席GOPS大会, EASYOPS企业版等你来
- folly学习心得
- Ubuntu 14.04桌面界面直接root用户登录
- eclipse部署时候不拷jar包到web-inf下面的lib目录解决办法
- Paint和Canvas
- LintCode : 验证二叉查找树
- ASP.NET网站程序防SQL注入式攻击方法
- 里氏代换原则(企鹅是不是鸟!)
- 计算某年某季度某月某周某日的起始结束时间戳
- 7.7 回归中的相关度和R平方值
- 生成个性二维码
- windows socket简单使用--实现客户端链接服务端并发送和接收数据
- MySQL的Date,DateTime,TimeStamp和Time数据类型
- js前端——滑稽官网的亮瞎眼系列滑稽大法