美文网首页leetcode
leetcode98-一个二叉树,判断其是否是一个有效的二叉搜索

leetcode98-一个二叉树,判断其是否是一个有效的二叉搜索

作者: 五年老码农 | 来源:发表于2020-02-13 22:33 被阅读0次

题目:

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

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

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


树1.PNG

输出: true
示例 2:
输入:


树2.PNG

输出: false
解释: 输入为: [5,1,4,null,null,3,6]。
根节点的值为 5 ,但是其右子节点值为 4
中序遍历解决

代码:

//中序编列验证二叉搜索树
class Solution {
    public boolean isValidBST(TreeNode root) {
        //定义一个栈
        Stack<TreeNode> sstack = new Stack();
        double min =  -Double.MAX_VALUE;
        while(root!=null||!sstack.isEmpty()){
            while(root!=null){
                sstack.push(root);
                root = root.left;
            }
            root =sstack.pop();
            if(root.val<=min){
                return false;
            }
            min =Double.valueOf(root.val);
            root =root.right;
        }
        return true;
    }
}

相关文章

  • 98. validate Binary Search Tree

    题目 给定一个二叉树,判断该二叉树是否是一个有效的二叉搜索树。 一个有效的二叉搜索树,其左子树的所有值小于该节点,...

  • LeetCode98.验证二叉搜索树

    1.题目描述 给你一个二叉树的根节点 root ,判断其是否是一个有效的二叉搜索树。有效 二叉搜索树定义如下:节点...

  • Swift 验证二叉搜索树- LeetCode

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

  • Day48 验证二叉搜索树

    给定一个二叉树,判断其是否是一个有效的二叉搜索树 https://leetcode-cn.com/problems...

  • Leetcode 98 验证二叉搜索树

    Time: 2019-08-10 题目描述 给定一个二叉树,判断其是否是一个有效的二叉搜索树。 假设一个二叉搜索树...

  • LeetCode 98. 验证二叉搜索树

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

  • LeetCode 验证二叉搜索树

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

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

    题目描述 给定一个二叉树,判断其是否是一个有效的二叉搜索树。 链接:https://leetcode-cn.com...

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

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

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

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

网友评论

    本文标题:leetcode98-一个二叉树,判断其是否是一个有效的二叉搜索

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