代码随想录——验证二叉搜索树(Leetcode98)

题目链接

递归

一个有效的二叉搜索树中序遍历应该是一个递增序列

java 复制代码
/**
 * Definition for a binary tree node.
 * public class TreeNode {
 *     int val;
 *     TreeNode left;
 *     TreeNode right;
 *     TreeNode() {}
 *     TreeNode(int val) { this.val = val; }
 *     TreeNode(int val, TreeNode left, TreeNode right) {
 *         this.val = val;
 *         this.left = left;
 *         this.right = right;
 *     }
 * }
 */
class Solution {
     ArrayList<Integer> array = new ArrayList<>();
    public boolean isValidBST(TreeNode root) {
        inOrder(root);
        for(int i = 1; i < array.size(); i++){
            if(array.get(i) <= array.get(i - 1)){
                return false;
            }
        }
        return true;
    }
    // 中序遍历
    public void inOrder(TreeNode root){
        if(root == null){
            return ;
        }
        inOrder(root.left);
        array.add(root.val);
        inOrder(root.right);
    }
}
相关推荐
计算机毕设指导612 分钟前
基于 SpringBoot 的作业管理系统【附源码】
java·vue.js·spring boot·后端·mysql·spring·intellij-idea
Gu Gu Study14 分钟前
枚举与lambda表达式,枚举实现单例模式为什么是安全的,lambda表达式与函数式接口的小九九~
java·开发语言
Chris _data16 分钟前
二叉树oj题解析
java·数据结构
牙牙70522 分钟前
Centos7安装Jenkins脚本一键部署
java·servlet·jenkins
დ旧言~28 分钟前
【高阶数据结构】图论
算法·深度优先·广度优先·宽度优先·推荐算法
paopaokaka_luck30 分钟前
[371]基于springboot的高校实习管理系统
java·spring boot·后端
张彦峰ZYF33 分钟前
投资策略规划最优决策分析
分布式·算法·金融
以后不吃煲仔饭42 分钟前
Java基础夯实——2.7 线程上下文切换
java·开发语言
进阶的架构师43 分钟前
2024年Java面试题及答案整理(1000+面试题附答案解析)
java·开发语言
The_Ticker1 小时前
CFD平台如何接入实时行情源
java·大数据·数据库·人工智能·算法·区块链·软件工程