力扣98:验证二叉搜索树

给你一个二叉树的根节点 root ,判断其是否是一个有效的二叉搜索树。

有效 二叉搜索树定义如下:

  • 节点的左 子树

    只包含小于当前节点的数。

  • 节点的右子树只包含 大于 当前节点的数。

  • 所有左子树和右子树自身必须也是二叉搜索树。

示例 1:

复制代码
输入:root = [2,1,3]
输出:true

示例 2:

复制代码
输入:root = [5,1,4,null,null,3,6]
输出:false
解释:根节点的值是 5 ,但是右子节点的值是 4 。

提示:

  • 树中节点数目范围在[1, 104]
  • -231 <= Node.val <= 231 - 1

代码:

复制代码
bool isBST(struct TreeNode* root, long min, long max){
    if(root == NULL)
        return true;
    return (root->val > min) && (root->val < max )&& isBST(root->left,min,root->val) && isBST(root->right,root->val,max);
}

bool isValidBST(struct TreeNode* root) {
    return isBST(root, LONG_MIN,LONG_MAX);
}
相关推荐
会员源码网15 小时前
使用`mysql_*`废弃函数(PHP7+完全移除,导致代码无法运行)
后端·算法
木心月转码ing16 小时前
Hot100-Day10-T438T438找到字符串中所有字母异位词
算法
HelloReader17 小时前
Wi-Fi CSI 感知技术用无线信号“看见“室内的人
算法
颜酱20 小时前
二叉树分解问题思路解题模式
javascript·后端·算法
qianpeng89721 小时前
水声匹配场定位原理及实验
算法
董董灿是个攻城狮1 天前
AI视觉连载8:传统 CV 之边缘检测
算法
AI软著研究员2 天前
程序员必看:软著不是“面子工程”,是代码的“法律保险”
算法
FunnySaltyFish2 天前
什么?Compose 把 GapBuffer 换成了 LinkBuffer?
算法·kotlin·android jetpack
颜酱2 天前
理解二叉树最近公共祖先(LCA):从基础到变种解析
javascript·后端·算法
地平线开发者2 天前
SparseDrive 模型导出与性能优化实战
算法·自动驾驶