leetcode:98. 验证二叉搜索树

学习要点

加深纯递归算法的理解

题目链接

98. 验证二叉搜索树 - 力扣(LeetCode)

题目描述

解法:纯递归

cpp 复制代码
vector<int> v;
    void dfs(TreeNode* root)
    {
        if(root == nullptr)
        {
            return;
        }
        dfs(root->left);
        v.push_back(root->val);
        dfs(root->right);
    }

    bool isValidBST(TreeNode* root) {     
        dfs(root);
        int flag = true;
        for(int i = 0; i<v.size();i++)
        {
            if(i > 0)
            {
                if(v[i] <= v[i-1])
                {
                    flag = false;
                    break;
                }
            }
        }
        return flag;
    }

解析

  1. 搜索二叉树的中序遍历是一个升序序列
  2. 中序遍历该二叉树,将其存入数组vector中
  3. 遍历这个数组,判断是否是一个升序数组
相关推荐
垆边人似月.19 分钟前
华为机试题 :字符串压缩
算法·华为
ggb喔20 分钟前
52pojie 的图片工具:为什么无损转换后体积涨了 6 倍、照片方向还是歪的
图像处理·python·算法·计算机视觉·图形渲染·媒体
菜鸟~noob23322 分钟前
【电子战】第25篇:自由空间、双射线与菲涅尔区【含matlab代码】
开发语言·算法·matlab
地平线开发者36 分钟前
地平线征程6M YOLOv8s 部署
算法·自动驾驶
Run_Teenage39 分钟前
算法:Manacher(马拉车)算法、中心扩展算法
算法
Tisfy1 小时前
LeetCode 0301.删除无效的括号:二进制枚举 / 回溯
算法·leetcode·字符串·题解·回溯·括号匹配·二进制枚举
Nil2081 小时前
leetcode 322零钱兑换
算法·leetcode·职场和发展
海绵宝宝转agent2 小时前
2026-10-9 leetcode100刷题+面经整理
笔记·算法·面试
yi0112 小时前
DAY24: LeetCode 167:两数之和 II|从暴力枚举到左右双指针
笔记·python·算法·leetcode·二分查找·双指针
木井巳2 小时前
【BFS 解决拓扑排序】课程表
java·算法·leetcode·广度优先·宽度优先·推荐算法·图搜索算法