Skip to content

Latest commit

 

History

History
23 lines (21 loc) · 701 Bytes

2331.md

File metadata and controls

23 lines (21 loc) · 701 Bytes

2331. Evaluate Boolean Binary Tree

Solution 1 (time O(n), space O(1))

# Definition for a binary tree node.
# class TreeNode(object):
#     def __init__(self, val=0, left=None, right=None):
#         self.val = val
#         self.left = left
#         self.right = right
class Solution(object):
    def evaluateTree(self, root):
        """
        :type root: Optional[TreeNode]
        :rtype: bool
        """
        if root.left is None and root.right is None:
            return root.val == 1
        if root.val == 2:
            return self.evaluateTree(root.left) | self.evaluateTree(root.right)
        return self.evaluateTree(root.left) & self.evaluateTree(root.right)