98. 验证二叉搜索树

原题链接:98. 验证二叉搜索树

思路:

要知道中序遍历下,输出的二叉搜索树节点的数值是有序序列。

有了这个特性,验证二叉搜索树,就相当于变成了判断一个序列是不是递增的了。

可以递归中序遍历将二叉搜索树转变成一个数组

然后只要比较一下,这个数组是否是有序的,注意二叉搜索树中不能有重复元素

全代码:

cpp 复制代码
bool isValidBST(TreeNode* root) {
        vec.clear(); // 不加这句在leetcode上也可以过,但最好加上
        traversal(root);
        for (int i = 1; i < vec.size(); i++) {
            // 注意要小于等于,搜索树里不能有相同元素
            if (vec[i] <= vec[i - 1]) return false;
        }
        return true;
    }
相关推荐
Jerry9 小时前
LeetCode 1047. 删除字符串中的所有相邻重复项
算法
可编程芯片开发12 小时前
基于霍尔传感器和PID控制器的有功功率检测控制系统simulink建模与仿真
算法
To_OC12 小时前
LC 17 电话号码的字母组合:我的回溯算法,就是从这道题开窍的
javascript·算法·leetcode
战族狼魂14 小时前
GPT-5.6与Grok 4.5重磅发布
人工智能·算法·大模型·大语言模型
白日焰火115 小时前
基于 OpenSpec 实现规范驱动开发
算法·交互
imuliuliang15 小时前
关于图搜索算法的性能建模与可预测性研究7
算法
ForDreamMusk16 小时前
批量归一化
人工智能·算法·机器学习
Ivanqhz17 小时前
刚体的自由度
人工智能·算法
KaMeidebaby17 小时前
卡梅德生物技术快报|抗体合成:多肽抗体合成工程化方案:Nsp2 保守肽多抗制备与多维度验证
前端·网络·数据库·人工智能·算法
Yang_jie_0318 小时前
笔记:数据结构(栈是否使用底指针以及头指针的初始化值)
数据结构·笔记·算法