题目
给定一个二叉树,判断它是否是合法的二叉查找树(BST)
一棵BST定义为:
节点的左子树中的值要严格小于该节点的值。
节点的右子树中的值要严格大于该节点的值。
左右子树也必须是二叉查找树。...一个节点的树也是二叉查找树。
样例
一个例子:
2
/
1 4
/
3 5
上述这棵二叉树序列化为 {2,1,4,#,#,3,5}...., Long.MAX_VALUE);
}
private boolean dfs(TreeNode root, long min, long max) {
if...(root == null)
return true;
if(root.val min || root.val >= max)...return false;
return dfs(root.left, min, root.val) && dfs(root.right, root.val, max)