98验证二叉搜索树

这个题必须要牢记:二叉树搜索树中序遍历必须是一个递增的序列,利用这个我们只需要判断这个是否为递增的即可

首先我的问题是中序遍历掌握的不牢,它的思路就是首先这个节点不为空,然后我们递归节点的左子树,然后将这个节点的值输入到这个数组当中,然后再遍历右子树,最后判断这个节点当中的数字是否单调递增即可。

复制代码
/**
 * 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 {
    vector<int> ret;
    void way(TreeNode* root){
        if(root==NULL){
            return ;
        }
        else{
            way(root->left);
            ret.push_back(root->val);
            way(root->right);
        }
    }
public:
    bool isValidBST(TreeNode* root) {
    ret.clear();
      way(root);
      for(int i=0;i<ret.size()-1;i++){
        if(ret[i]>=ret[i+1]){
            return false;
        }
      }
      return true;
    }
};

中序遍历的过程如下

相关推荐
GreenTea5 小时前
深度解读 Anthropic 多智能体报告:更强的模型 ≠ 更好的协调
前端·后端·算法
风流 少年5 小时前
Spring AI 2.0:Memory
java·后端·spring
码匠许师傅5 小时前
【C++ 面试真题】聊聊 C++ 的移动语义与右值引用
java·c++·面试
小席是个热心肠6 小时前
AI相关的自我学习
java·人工智能·学习
fqq36 小时前
力扣刷题前置Java语法
算法·leetcode·职场和发展
数智化管理手记8 小时前
海量数据如何沉淀有效数据资产?数据标准化治理方案如何搭建?
java·大数据·人工智能
2501_906565128 小时前
数学之美探究
算法
oier_Asad.Chen8 小时前
【洛谷题解/AcWing题解/OI学习笔记】洛谷P2868【USACO07DEC】Sightseeing Cows G(01分数规划求最大比率)
算法·图论·spfa·二分·负环
cfm_29148 小时前
SpringAI + Ollama 本地大模型
java·开发语言·人工智能·语言模型
鲸采云SRM采购管理系统9 小时前
采购管理系统哪家好?2026最新测评对比
java·服务器·数据库