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

leetcode日记(85)验证二叉搜索树

不难,有两种解法(看答案才想到中序遍历)。

我用的是普通递归,和上一题差不多,规定min和max,每次遍历缩小范围:

/**
 * Definition for a binary tree node.
 * struct TreeNode {
 *     int val;
 *     TreeNode *left;
 *     TreeNode *right;
 *     TreeNode() : val(0), left(nullptr), right(nullptr) {}
 *     TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}
 *     TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {}
 * };
 */
class Solution {
public:
    bool Vaild(TreeNode* root,long int min,long int max){
        bool b=1;
        if(root->val>=max||root->val<=min) return 0;
        if(root->left!=NULL){
            b=b&Vaild(root->left,min,root->val);
        }
        if(b==0) return 0;
        if(root->right!=NULL){
            b=b&Vaild(root->right,root->val,max);
        }
        return b;
    }
    bool isValidBST(TreeNode* root) {
        long int min=-2147483649;
        long int max=2147483648;
        return Vaild(root,min,max);
    }
};

也可以用中序遍历的方法。

相关文章:

  • STM32 I2C驱动开发全解析:从理论到实战 | 零基础入门STM32第五十步
  • 蓝桥杯历年真题题解
  • 布朗运动(Brownian Motion):随机世界的舞者
  • C语言学习笔记-进阶(7)字符串函数3
  • 二分查找寻找旋转排序数组最小值边界条件处理
  • 【 <一> 炼丹初探:JavaWeb 的起源与基础】之 Servlet 过滤器:实现请求的预处理与后处理
  • 【GPT入门】第8课 大语言模型的自洽性
  • Mybatis Generator 使用手册
  • YCL4级python青少年人工智能水平测试复习资料
  • Java实现Consul/Nacos根据GPU型号、显存余量执行负载均衡
  • AI编程创新
  • 【机械臂】Windows 11安装Mujoco200并运行基于强化学习的多任务机械臂Meta-word基准
  • Python定时任务管理器
  • CUDA编程入门代码
  • VUE叉的工作原理?
  • mysql下载与安装、关系数据库和表的创建
  • 【LLM学习】1-NLP回顾+Pytorch复习
  • 如何快速辨别zip压缩包伪加密
  • 系统架构设计师—系统架构设计篇—微服务架构
  • 【AI实践】基于TensorFlow/Keras的CNN(卷积神经网络)简单实现:手写数字识别的工程实践
  • 百度云网站建设教程/镇江网站关键字优化
  • 保密和档案网站建设方案/网站流量数据分析
  • 自学免费网站建设/网络营销个人感悟小结
  • ubuntu做网站开发/白度
  • 动漫制作专业软件有哪些/seo和sem的区别与联系
  • 室内设计公司的运营模式/seo关键词优化最多可以添加几个词