Class Solution
-
- All Implemented Interfaces:
public final class Solution2331 - Evaluate Boolean Binary Tree\.
Easy
You are given the
rootof a full binary tree with the following properties:Leaf nodes have either the value
0or1, where0representsFalseand1representsTrue.Non-leaf nodes have either the value
2or3, where2represents the booleanORand3represents the booleanAND.
The evaluation of a node is as follows:
If the node is a leaf node, the evaluation is the value of the node, i.e.
TrueorFalse.Otherwise, evaluate the node's two children and apply the boolean operation of its value with the children's evaluations.
Return the boolean result of evaluating the
rootnode.A full binary tree is a binary tree where each node has either
0or2children.A leaf node is a node that has zero children.
Example 1:
Input: root = 2,1,3,null,null,0,1
Output: true
Explanation: The above diagram illustrates the evaluation process.
The AND node evaluates to False AND True = False.
The OR node evaluates to True OR False = True.
The root node evaluates to True, so we return true.
Example 2:
Input: root = 0
Output: false
Explanation: The root node is a leaf node and it evaluates to false, so we return false.
Constraints:
The number of nodes in the tree is in the range
[1, 1000].0 <= Node.val <= 3Every node has either
0or2children.Leaf nodes have a value of
0or1.Non-leaf nodes have a value of
2or3.
-
-
Constructor Summary
Constructors Constructor Description Solution()
-
Method Summary
Modifier and Type Method Description final BooleanevaluateTree(TreeNode root)-
-
Method Detail
-
evaluateTree
final Boolean evaluateTree(TreeNode root)
-
-
-
-