Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class Solution {
- public:
- bool isValidBST(TreeNode* root) {
- return CheckIsValidBST(root, numeric_limits<long long>::min(), numeric_limits<long long>::max());
- }
- private:
- // [min_val, max_val] - valid subtree range
- bool CheckIsValidBST(TreeNode* node, long long min_val, long long max_val) {
- if (!node) return true;
- if (node->val <= min_val || node->val >= max_val) return false;
- return CheckIsValidBST(node->left, min_val, node->val) && CheckIsValidBST(node->right, node->val, max_val);
- }
- };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement