Given the root of a binary tree, return True if the tree is height-balanced and False otherwise. A binary tree is height-balanced if, for every node, the heights of its left and right subtrees differ by at most 1.
Example 1:
Input: root = [3,9,20,null,null,15,7]
Output: True
Explanation: Every node has left and right subtree heights that differ by at most 1.
Example 2:
Input: root = [1,2,2,3,3,null,null,4,4]
Output: False
Explanation: The left subtree is deeper than the right by more than 1 at some node.
[0, 5000]-10^4 <= Node.val <= 10^4