98 Validate Binary Search Tree
2
/ \
1 3 1
/ \
2 3# Definition for a binary tree node.
# class TreeNode:
# def __init__(self, x):
# self.val = x
# self.left = None
# self.right = None
import sys
class Solution:
def isValidBST(self, root):
"""
:type root: TreeNode
:rtype: bool
"""
is_valid = [True]
prev = [-sys.maxsize]
def in_order(root):
if root and is_valid[0]:
in_order(root.left)
if prev[0] >= root.val:
is_valid[0] = False
else:
prev[0] = root.val
in_order(root.right)
in_order(root)
return is_valid[0]Last updated