package org.example.leetcodeBook.deepSearch;
//验证二叉搜索树
//给你一个二叉树的根节点 root ,判断其是否是一个有效的二叉搜索树。
// 有效 二叉搜索树定义如下:
// 节点的左
// 子树
// 只包含 小于 当前节点的数。
// 节点的右子树只包含 大于 当前节点的数。
// 所有左子树和右子树自身必须也是二叉搜索树。
//输入:root = [2,1,3]
// 输出:true
public class IsValidBSTSolution {
class TreeNode{
int val;
TreeNode left,right;
TreeNode(int val){
this.val=val;
}
}
public boolean isValidBST(TreeNode root){
return isValidBST(root,Long.MIN_VALUE,Long.MAX_VALUE);
}
private boolean isValidBST(TreeNode root, long minValue, long maxValue) {
if(root==null) return true;
if(root.val<=minValue || root.val>=maxValue) return false;
return isValidBST(root.left,minValue,root.val)&&
isValidBST(root.right,root.val,maxValue);
}
}
验证二叉搜索树
最新推荐文章于 2025-12-27 15:45:53 发布

955

被折叠的 条评论
为什么被折叠?



