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.
1 判断是否是binary search tree的时候,当root为空时,是返回True的
2 有时候局部是满足的,但是放到全局不一定满足条件了
3 比如根节点是10,下面有个15,6,17,局部是满足的,但是放到全局6比10小
4 binary search tree的定义是,所有左子树节点的值小于根节点,所有右子树节点的值大于根节点,对于其子树也得满足这个条件
5 无限小float('-inf'),无限大float('inf')
6 使用recursive的时候,
1 记住要判断root.val和lessThan和largeThan的关系
三刷:
float('inf')和float('-inf')可以直接赋值在输入参数里