/* * @lc app=leetcode id=98 lang=java * * [98] Validate Binary Search Tree */ /** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */ class Solution { public boolean isValidBST(TreeNode root) { return isBST(root, Long.MIN_VALUE, Long.MAX_VALUE); } public boolean isBST(TreeNode root, long min, long max) { if (root == null) return true; if (root.val <= min || root.val >= max) return false; return isBST(root.left, min, root.val) && isBST(root.right, root.val, max); } }