Leetcode: Validate Binary Search Tree
2013-09-27 12:36
369 查看
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.
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.
/** * Definition for binary tree * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */ class Solution { public: bool islessthanroot(TreeNode* left, int val) { if(left==NULL)return true; if(left->val >= val)return false; return islessthanroot(left->left,val) && islessthanroot(left->right,val); } bool islargethanroot(TreeNode* right, int val) { if(right==NULL)return true; if(right->val <= val)return false; return islargethanroot(right->left,val) && islargethanroot(right->right,val); } bool isValidBST(TreeNode *root) { // Start typing your C/C++ solution below // DO NOT write int main() function if(root == NULL) return true; if(islessthanroot(root->left,root->val) && islargethanroot(root->right,root->val)) { return isValidBST(root->left) && isValidBST(root->right); }else return false; } };
相关文章推荐
- 【LeetCode】Validate Binary Search Tree
- LeetCode--Validate Binary Search Tree
- [LeetCode] 98. Validate Binary Search Tree
- 【LeetCode】98. 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
- 93_leetcode_Validate Binary Search Tree
- 《leetCode》:Validate Binary Search Tree
- leetcode Validate Binary Search Tree
- leetcode dfs Validate Binary Search Tree
- LeetCode98—Validate Binary Search Tree
- [leetcode] 98.Validate Binary Search Tree
- Validate Binary Search Tree--LeetCode
- LeetCode: Validate Binary Search Tree
- [leetcode][tree] Validate Binary Search Tree
- [leetcode]Validate Binary Search Tree