标签:treenode 输出 搜索 子节点 solution int 必须 return init
给定一个二叉树,判断其是否是一个有效的二叉搜索树。
假设一个二叉搜索树具有如下特征:
示例 1:
输入:
2
/ \
1 3
输出: true
示例 2:
输入:
5
/ \
1 4
/ \
3 6
输出: false
解释: 输入为: [5,1,4,null,null,3,6]。
根节点的值为 5 ,但是其右子节点值为 4 。
1 /** 2 * Definition for a binary tree node. 3 * public class TreeNode { 4 * int val; 5 * TreeNode left; 6 * TreeNode right; 7 * TreeNode(int x) { val = x; } 8 * } 9 */ 10 class Solution { 11 public boolean isValidBST(TreeNode root){ 12 return isValidBST(root,Long.MIN_VALUE,Long.MAX_VALUE); 13 } 14 15 public boolean isValidBST(TreeNode root,long minVal,long maxVal){ 16 if(root==null) return true; 17 if(root.val>=maxVal|| root.val<=minVal) return false; 18 return isValidBST(root.left,minVal,root.val) && isValidBST(root.right,root.val,maxVal); 19 } 20 }
标签:treenode 输出 搜索 子节点 solution int 必须 return init
原文地址:https://www.cnblogs.com/kexinxin/p/10163081.html