首页 > 其他分享 >【DFS】LeetCode 98. 验证二叉搜索树

【DFS】LeetCode 98. 验证二叉搜索树

时间:2023-02-12 18:00:39浏览次数:55  
标签:node upper 结点 return val DFS 98 LeetCode isValidBST

题目链接

98. 验证二叉搜索树

思路

依据 BST 的定义:左子树的结点都比根结点小,右子树的结点都比根结点大。我们在递归过程中传递根节点的值,判断当前结点值与根结点值的大小关系。

代码

class Solution {
    public boolean isValidBST(TreeNode root) {
        return isValidBST(root, Long.MIN_VALUE, Long.MAX_VALUE);
    }

    public boolean isValidBST(TreeNode node, long lower, long upper) {
        if(node == null){
            return true;
        }
        if(node.val <= lower || node.val >= upper){
            return false;
        }
        
        return isValidBST(node.left, lower, node.val) && isValidBST(node.right, node.val, upper);
    }
}

标签:node,upper,结点,return,val,DFS,98,LeetCode,isValidBST
From: https://www.cnblogs.com/shixuanliu/p/17114355.html

相关文章