当前位置:网站首页>【力扣】98. 验证二叉搜索树
【力扣】98. 验证二叉搜索树
2022-08-09 14:58:00 【漆黑丶】
题目:
给你一个二叉树的根节点 root ,判断其是否是一个有效的二叉搜索树。
有效 二叉搜索树定义如下:
节点的左子树只包含 小于 当前节点的数。
节点的右子树只包含 大于 当前节点的数。
所有左子树和右子树自身必须也是二叉搜索树。
示例 1:
输入:root = [2,1,3]
输出:true
示例 2:
输入:root = [5,1,4,null,null,3,6]
输出:false
解释:根节点的值是 5 ,但是右子节点的值是 4 。
提示:
树中节点数目范围在[1, 104] 内
-231 <= Node.val <= 231 - 1
答案:
/** * 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 {
//先找到最左边的值跟根节点判断,然后根节点跟右边的值判断。
double last = -Double.MAX_VALUE;
public boolean isValidBST(TreeNode root) {
if(root == null) return true;
if(isValidBST(root.left)){
if(last < root.val){
last = root.val;
return isValidBST(root.right);
}
}
return false;
}
}
边栏推荐
猜你喜欢
【深度学习】梳理凸优化问题(五)
Stetman的读paper小记:Deep Learning Backdoor Survey (Shaofeng Li, Shiqing Ma, Minhui Xue)
【论文阅读】LIME:Low-light Image Enhancement via Illumination Map Estimation(笔记最全篇)
深入浅出最优化(2) 步长的计算方法
YOLOV2详解
基于MTCNN和FaceNet的实时人脸检测识别系统
Region实战SVG地图点击
【深度学习】前向传播和反向传播(四)
【工具使用】Modbus Poll软件使用详解
深入浅出最优化(5) 共轭梯度下降法
随机推荐
配置 vscode 让它变得更好用
R-CNN Fast R-CNN Faster R-CNN总结
keras使用class weight和sample weight处理不平衡问题
spark shuffle
【工具使用】Modbus Slave软件使用详解
图像质量指标:峰值信噪比PSNR和结构相似性SSIM
UDP 基本通信框架
抱抱脸(hugging face)教程-中文翻译-使用 Tokenizers 的 tokenizers
[Deep learning] attention mechanism
opencv图像处理及视频处理基本操作
【深度学习】原始问题和对偶问题(六)
Faster R-CNN 论文总结
研究生工作周报(第六周)
NoUniqueBeanDefinitionException和JSON乱码处理出现异常
Why learn the principles of compiling
【Postgraduate Work Weekly】(Week 8)
pyspark explode时增加序号
【Leetcode】433. 最小基因变化
Photoshop CS6的使用心得
YOLOV2详解