非独立思考
public boolean isValidBST(TreeNode root) {return isValidBST(root, Long.MIN_VALUE, Long.MAX_VALUE);}public boolean isValidBST(TreeNode cur, long min, long max) {// 相当于递归结束条件if (cur == null) {return true;}// 下面2个是递归里的判断条件if (cur.val <= min || cur.val >= max) {return false;}// 最关键的地方:定义子节点的边界值// 左子树最大不得超过当前node.val,右子树不得小于当前node.valreturn isValidBST(cur.left, min, cur.val) && isValidBST(cur.right, cur.val, max);}
