zoukankan      html  css  js  c++  java
  • [LC] 98. Validate Binary Search Tree

    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:

        2
       / 
      1   3
    
    Input: [2,1,3]
    Output: true
    

    Example 2:

        5
       / 
      1   4
         / 
        3   6
    
    Input: [5,1,4,null,null,3,6]
    Output: false
    Explanation: The root node's value is 5 but its right child's value is 4.

    Time: O(N)
    Space: O(N)

     1 # Definition for a binary tree node.
     2 # class TreeNode:
     3 #     def __init__(self, x):
     4 #         self.val = x
     5 #         self.left = None
     6 #         self.right = None
     7 
     8 class Solution:
     9     def isValidBST(self, root: TreeNode) -> bool:
    10         import sys
    11         right_bound = sys.maxsize
    12         left_bound = -sys.maxsize - 1
    13         return self.helper(root, left_bound, right_bound)
    14         
    15     def helper(self, root, left_bound, right_bound):
    16         if root is None:
    17             return True
    18         if root.val <= left_bound or root.val >= right_bound:
    19             return False
    20         # 1. left child's child cannot larger than current node val
    21         # 2. right child's child cannot be small than current node val
    22         return self.helper(root.left, left_bound, root.val) and self.helper(root.right, root.val, right_bound)
    23         
    24         
    25         
    26         
    
    
    
     
  • 相关阅读:
    tcpdump 筛选抓包
    TCP拥塞避免
    【转载】TCP协议
    go 参数传递的是值还是引用 (转)
    go 数组指针 指针数组
    go 协程
    go 接口实现
    go函数可见性
    go 继承
    go 结构体函数
  • 原文地址:https://www.cnblogs.com/xuanlu/p/11683776.html
Copyright © 2011-2022 走看看