class Solution {
public boolean isValidBST(TreeNode root) {
return isValidBST(root, Long.MIN_VALUE, Long.MAX_VALUE);//此处必须不能用integer.MAX_VALUE,因为结点值有可能正好等于上2的31次方减一,这样就会返回false;
}
public boolean isValidBST(TreeNode root,long lower,long upper){
if(root == null){
return true;
}
if(root.val>=upper || lower>=root.val){
return false;
}else{
return isValidBST(root.left,lower,root.val) && isValidBST(root.right,root.val,upper);
}
}
}
验证二叉搜索树 Leetcode 26
于 2022-02-16 10:35:43 首次发布