[LeetCode] Validate Binary Search Tree
来源:互联网 发布:小区网络监控设计方案 编辑:程序博客网 时间:2024/06/04 18:21
Given a binary tree, determine if it is a valid binary search tree (BST).
Assume a BST is defined as follows:
- The left subtree of a node contains only nodes with keys less than the node's key.
- The right subtree of a node contains only nodes with keys greater than the node's key.
- Both the left and right subtrees must also be binary search trees.
confused what "{1,#,2,3}"
means? > read more on how binary tree is serialized on OJ.
方法一
class Solution {public: TreeNode *left;//记录左边的节点 TreeNode *right;//记录右边的节点 bool check(TreeNode *node){ if(node == NULL) return true; bool b1 = check(node -> left); left = right; right = node; if(left != NULL && left -> val >= right -> val) return false;//当左边的比右边的大则返回false bool b2 = check(node -> right); return b1 && b2; } bool isValidBST(TreeNode *root) { left = NULL; right = NULL; return check(root); }};方法二
class Solution {public: bool check(TreeNode *node,long long min,long long max){ if(node == NULL) return true; return (node -> val > min && node -> val < max) && check(node -> left,min,node -> val) && check(node -> right,node -> val,max); } bool isValidBST(TreeNode *root) { return check(root,LONG_LONG_MIN,LONG_LONG_MAX); }};
0 0
- LeetCode: Validate Binary Search Tree
- [Leetcode] Validate Binary Search Tree
- LeetCode : Validate Binary Search Tree
- [LeetCode] Validate Binary Search Tree
- [LeetCode] Validate binary search tree
- [LeetCode]Validate Binary Search Tree
- [Leetcode]Validate Binary Search Tree
- [leetcode]Validate Binary Search Tree
- LeetCode-Validate Binary Search Tree
- [leetcode] Validate Binary Search Tree
- LeetCode - Validate Binary Search Tree
- [LeetCode] Validate Binary Search Tree
- Leetcode Validate Binary Search Tree
- LeetCode | Validate Binary Search Tree
- LeetCode - Validate Binary Search Tree
- Leetcode: Validate Binary Search Tree
- 【Leetcode】Validate Binary Search Tree
- 【leetcode】Validate Binary Search Tree
- UC函数之 open
- 信息系统项目管理师考试经验谈
- 1. debian telnet安装
- Java线程生命周期与基本操作(二)
- 在多继承的时候,如果一个类继承同时继承自class A和class B,而class A和B中都有一个函数叫foo(),如何明确的在子类中指出override哪个父类的foo()?
- [LeetCode] Validate Binary Search Tree
- 变参数print函数的实现va_list
- Android的ContentProvider(一)
- nginx按天分割日志
- android:屏幕自适应
- iOS UIPageControl简单实例
- ORACLE配置tnsnames.ora文件实例
- Unity爆炸检测
- linux中用wine加载使用TortoiseSVN