博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
38: Validate Binary Search Tree
阅读量:5121 次
发布时间:2019-06-13

本文共 1453 字,大约阅读时间需要 4 分钟。

/************************************************************************/

        /*       38:      Validate Binary Search Tree                            */
        /************************************************************************/
        /*
         *  Given a binary tree, determine if it is a valid binary search tree (BST).
Assume a BST is defined as follows:
    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.
confused what "{1,#,2,3}" means? > read more on how binary tree is serialized on OJ.
         *
         * */
        
        
        /*
         * 二叉搜索树:
         *
         * */
        
        /**
         * Definition for binary tree
         * public class TreeNode {
         *     int val;
         *     TreeNode left;
         *     TreeNode right;
         *     TreeNode(int x) { val = x; }
         * }
         */
        
/**1 : max(left nodes) < root&& min(right nodes)>root *******************************************/

// 当 min(left node )>root || max(right nodes)<root 时 就肯定不是了

 

public boolean isValidBST(TreeNode root)        {            return  validate(root,null,null);        }        boolean validate(TreeNode node, TreeNode tmin, TreeNode tmax) {            if (node == null) return true;            if (tmin != null && node.val <= tmin.val) return false;            if (tmax != null && node.val >= tmax.val) return false;            return validate(node.left, tmin, node) && validate(node.right, node, tmax);        }

 

转载于:https://www.cnblogs.com/theonemars/p/4254212.html

你可能感兴趣的文章
http和https的区别
查看>>
Hbuild在线云ios打包失败,提示BuildConfigure Failed 31013 App Store 图标 未找到 解决方法...
查看>>
找到树中指定id的所有父节点
查看>>
今天新开通了博客
查看>>
Linux命令应用大词典-第4章 目录和文件操作
查看>>
A + B Problem II
查看>>
app与服务端通信时如何进行消息校验
查看>>
AS3优化性能笔记二
查看>>
wpf combobox
查看>>
Java高阶回调,回调函数的另一种玩法
查看>>
WCF公开服务元数据方式
查看>>
2014蓝桥杯问题 C: 神奇算式
查看>>
ElasticSearch(站内搜索)
查看>>
Node.js简单介绍并实现一个简单的Web MVC框架
查看>>
Linux压缩与解压缩
查看>>
哈希(Hash)与加密(Encrypt)相关内容
查看>>
4----COM:a Generative Model for group recommendation(组推荐的一种生成模型)
查看>>
UVA 11137 - Ingenuous Cubrency
查看>>
js阻止事件冒泡的两种方法
查看>>
Java异常抛出
查看>>