美文网首页
验证二叉搜索树

验证二叉搜索树

作者: xiaoyaook | 来源:发表于2017-11-08 21:41 被阅读0次

方法1

中序遍历,验证
二叉搜索树条件:

The left subtree of a node contains only nodes with keys less than the node's key.
The right subtree of a node contains only nodes with keys greater than the node's key.
Both the left and right subtrees must also be binary search trees.

故我们可以先进行中序遍历,先遍历左子树,当到达叶节点时,记录该结点,然后记录其父节点,然后是右节点.然后验证即可
output = []维持一个数组储存节点的值
self.inOrder(root, output)中序遍历

for i in range(1, len(output)):
     if output[i-1] >= output[i]:
     return False
return True

对数组进行验证,看是否满足二叉搜索树的条件

方法2

直接遍历比较
初始化两个参数lessThan = float('inf'), largerThan = float('-inf')

 def isValidBST(self, root, lessThan = float('inf'), largerThan = float('-inf')):
        if not root:
            return True
        if root.val <= largerThan or root.val >= lessThan:
            return False
        return self.isValidBST(root.left, min(lessThan, root.val), largerThan) and \
               self.isValidBST(root.right, lessThan, max(root.val, largerThan))

从根节点同时向左子树和右子树遍历,lessThanlargerThan一直为父节点的值,若不满足条件,则说明不符合二叉搜索树.

相关文章

  • Swift 验证二叉搜索树- LeetCode

    题目: 验证二叉搜索树 验证二叉搜索树给定一个二叉树,判断其是否是一个有效的二叉搜索树。 假设一个二叉搜索树具有...

  • LeetCode-98-验证二叉搜索树

    LeetCode-98-验证二叉搜索树 98. 验证二叉搜索树[https://leetcode-cn.com/p...

  • [LeetCode OJ]- Valid Binary Sea

    题目要求:验证一个树是否为二叉搜索树。 二叉搜索树:(BST,二叉排序树,二叉查找树)。 一颗二叉检索树或者为空树...

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

    98. 验证二叉搜索树 来源: 98. 验证二叉搜索树 1. 题目描述 给定一个二叉树,判断其是否是一个有效的二...

  • LeetCode 98. 验证二叉搜索树

    98. 验证二叉搜索树 给定一个二叉树,判断其是否是一个有效的二叉搜索树。 假设一个二叉搜索树具有如下特征: 节点...

  • LeetCode 验证二叉搜索树

    98、验证二叉搜索树参考给定一个二叉树,判断其是否是一个有效的二叉搜索树。 假设一个二叉搜索树具有如下特征: 节点...

  • 2019 算法面试相关(leetcode)--树、二叉树、二叉搜

    翻转二叉树二叉树的前序遍历二叉树的中序遍历二叉树的后序遍历验证二叉搜索树二叉树的最近公共祖先二叉搜索树的最近公共祖...

  • 【算法】验证二叉搜索树

    验证二叉搜索树 描述 给定一个二叉树,判断其是否是一个有效的二叉搜索树。假设一个二叉搜索树具有如下特征:节点的左子...

  • LeetCode:是否是合法的二叉搜索树

    98. 验证二叉搜索树 给定一个二叉树,判断其是否是一个有效的二叉搜索树。假设一个二叉搜索树具有如下特征:节点的左...

  • LeetCode-098-验证二叉搜索树

    验证二叉搜索树 题目描述:给定一个二叉树,判断其是否是一个有效的二叉搜索树。假设一个二叉搜索树具有如下特征:节点的...

网友评论

      本文标题:验证二叉搜索树

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