力扣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);
}
相关推荐
dazzle1 天前
Python数据结构(十五):归并排序详解
数据结构·python·算法
2301_764441331 天前
基于paCy模型与jsoncrack进行依存句法分析
python·算法·自然语言处理
咩咩不吃草1 天前
【逻辑回归】:从模型训练到评价
算法·机器学习·逻辑回归
ersaijun1 天前
机器人运动控制关键算法体系:从理论框架到前沿实践
算法·机器人
smj2302_796826521 天前
解决leetcode第3826题.最小分割分数问题
数据结构·python·算法·leetcode
多多*1 天前
2026年最新 测试开发工程师相关 Linux相关知识点
java·开发语言·javascript·算法·spring·java-ee·maven
VT.馒头1 天前
【力扣】2705. 精简对象
javascript·数据结构·算法·leetcode·职场和发展·typescript
元亓亓亓1 天前
LeetCode热题100--136. 只出现一次的数字--简单
算法·leetcode·职场和发展
2301_763472581 天前
实时系统下的C++编程
开发语言·c++·算法