美文网首页
[Leetcode] 98. 验证二叉搜索树

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

作者: 丶噗噗噗噗噗 | 来源:发表于2020-05-05 09:51 被阅读0次

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)

相关文章

网友评论

      本文标题:[Leetcode] 98. 验证二叉搜索树

      本文链接:https://www.haomeiwen.com/subject/iwipghtx.html