Evaluate Boolean Binary Tree
EasyTreeDepth-First SearchBinary Tree
Solution
import { TreeNode } from '@algorithm/lib';
export function evaluateTree(root: TreeNode | null): boolean {
if (root === null) {
return true;
}
if (root.left === null || root.right === null) {
return root.val === 1;
}
if (root.val === 2) {
return evaluateTree(root.left) || evaluateTree(root.right);
}
return evaluateTree(root.left) && evaluateTree(root.right);
}