98. Validate Binary Search Tree
Posted tobeabetterpig
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了98. Validate Binary Search Tree相关的知识,希望对你有一定的参考价值。
/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */ class Solution { public boolean isValidBST(TreeNode root) { return helper(root, Long.MIN_VALUE, Long.MAX_VALUE); } public boolean helper(TreeNode root, long minval, long maxval){ if(root == null) return true; if(root.val >= maxval || root.val <= minval) return false; return helper(root.left, minval, root.val) && helper(root.right, root.val, maxval); } }
Given a binary tree, determine if it is a valid binary search tree (BST).
Assume a BST is defined as follows:
- The left subtree of a node contains only nodes with keys less than the node‘s key.
- The right subtree of a node contains only nodes with keys greater than the node‘s key.
- Both the left and right subtrees must also be binary search trees.
Example 1:
Input: 2 / 1 3 Output: true
Example 2:
5 / 1 4 / 3 6 Output: false Explanation: The input is: [5,1,4,null,null,3,6]. The root node‘s value is 5 but its right child‘s value is 4.
以上是关于98. Validate Binary Search Tree的主要内容,如果未能解决你的问题,请参考以下文章
98. Validate Binary Search Tree
LC.98.Validate Binary Search Tree
LeetCode98. Validate Binary Search Tree
98. Validate Binary Search Tree