A
D
BIn a Meta-style coding interview, you may be asked to validate whether a binary tree is structurally balanced enough for efficient traversal. Given the root of a binary tree, determine whether it is height-balanced.
A binary tree is height-balanced if, for every node, the absolute difference between the heights of its left and right subtrees is at most 1.
root, the root node of a binary tree, or null for an empty tree.True if the tree is height-balanced; otherwise False.Example 1
root = [3,9,20,null,null,15,7]True1.Example 2
root = [1,2,2,3,3,null,null,4,4]False1 at multiple nodes.[0, 5000]-10^4 <= Node.val <= 10^4root = [3,9,20,null,null,15,7]OutputTrueWhyThe left subtree has height 1 and the right subtree has height 2, and every node satisfies the balance condition.root = [1,2,2,3,3,null,null,4,4]OutputFalseWhyThe left side is too deep compared with the right side, so at least one node has subtree heights differing by more than 1.root = []OutputTrueWhyAn empty tree is balanced by definition.The number of nodes in the tree is in the range [0, 5000]-10^4 <= Node.val <= 10^4A tree is height-balanced if every node has left and right subtree heights differing by at most 1def is_balanced(root):