[Leetcode] 98. 验证二叉搜索树

98. 验证二叉搜索树

来源: 98. 验证二叉搜索树

1. 题目描述

给定一个二叉树,判断其是否是一个有效的二叉搜索树。

假设一个二叉搜索树具有如下特征:

节点的左子树只包含小于当前节点的数。
节点的右子树只包含大于当前节点的数。
所有左子树和右子树自身必须也是二叉搜索树。

2. 解题思路

递归

3. 代码

class Solution:
    def isValidBST(self, root: TreeNode) -> bool:
        return self.isValidBSTMinAndMax(root, -(2**32), 2**32)

    def isValidBSTMinAndMax(self, root, min, max):
        if root is None:
            return True
        if root.val >= max or root.val <= min:
            return False
        return self.isValidBSTMinAndMax(root.left, min, root.val) and self.isValidBSTMinAndMax(root.right, root.val, max)
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。