当前位置: 首页 > article >正文

力扣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);
}


http://www.kler.cn/a/416777.html

相关文章:

  • 远程协助软件Todesk免费版有什么限制
  • 【WPS】【EXCEL】将单元格中字符按照分隔符拆分按行填充到其他单元格
  • 哈希表,哈希桶的实现
  • SpringBoot小知识(3):热部署知识
  • 分页查询功能
  • 10、流程控制语句
  • [CTF/网络安全] 攻防世界 upload1 解题详析
  • js 中 file 文件 应用
  • 应急响应靶机——Windows挖矿事件
  • Istio笔记01--快速体验Istio
  • 使用 Spring AI + Elasticsearch 让 RAG 变得简单
  • jmeter基础(超详细总结)
  • 第五讲:运算符与表达式:算术、关系、逻辑、赋值等运算符及其优先级
  • 超级灵感:前端页面功能统一管理方案
  • Flutter 权限申请
  • 数据结构——有序二叉树的构建遍历查找
  • 【iOS】多线程基础
  • 基于R语言森林生态系统结构、功能与稳定性分析与可视化
  • 搭建一个基于Web的文档管理系统,用于存储、共享和协作编辑文档
  • 面试小札:ThreadLocal底层实现原理和具体应用场景
  • 浅谈JAVA中的Random随机数
  • Linux CentOS:深入探讨端口管理与防火墙配置技巧20241126
  • 蓝队之云技术
  • UE5 打包环境、C++环境安装说明
  • [2024年3月10日]第15届蓝桥杯青少组stema选拔赛C++中高级(第二子卷、编程题(6))
  • 基础(函数、枚举)错题汇总