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. 遍历这个数组,判断是否是一个升序数组
相关推荐
凌肖战3 小时前
力扣网编程55题:跳跃游戏之逆向思维
算法·leetcode
黑听人3 小时前
【力扣 简单 C】70. 爬楼梯
c语言·leetcode
88号技师4 小时前
2025年6月一区-田忌赛马优化算法Tianji’s horse racing optimization-附Matlab免费代码
开发语言·算法·matlab·优化算法
ゞ 正在缓冲99%…4 小时前
leetcode918.环形子数组的最大和
数据结构·算法·leetcode·动态规划
Kaltistss5 小时前
98.验证二叉搜索树
算法·leetcode·职场和发展
知己如祭5 小时前
图论基础(DFS、BFS、拓扑排序)
算法
mit6.8246 小时前
[Cyclone] 哈希算法 | SIMD优化哈希计算 | 大数运算 (Int类)
算法·哈希算法
c++bug6 小时前
动态规划VS记忆化搜索(2)
算法·动态规划
哪 吒6 小时前
2025B卷 - 华为OD机试七日集训第5期 - 按算法分类,由易到难,循序渐进,玩转OD(Python/JS/C/C++)
python·算法·华为od·华为od机试·2025b卷
军训猫猫头6 小时前
1.如何对多个控件进行高效的绑定 C#例子 WPF例子
开发语言·算法·c#·.net