long l = 9223372036854775808; 后面是一个int 类型 的数
long l = 9223372036854775808L; 才是一个long类型的数
class Solution {
public boolean isValidBST(TreeNode root) {
return dfs(root,Integer.MIN_VALUE-100L,Integer.MAX_VALUE+100L);
}
public boolean dfs(TreeNode root,long x,long y) {
if(root == null) return true;
if(x>root.val||y<root.val) return false; //y 可以等于 root.val x也一样 因为在传参的过程中 已经将数值代入了
return dfs(root.left,x,root.val-1L)&dfs(root.right,root.val+1L,y); //&& 用的太妙了
}
}
long 和 int 加减一定要注意 + xxx L 不然会被强行转化位int 类型