Given the root of a binary tree, return its maximum depth.
A binary tree's maximum depth is the number of nodes along the longest path from the root node down to the farthest leaf node.
Example 1:
Input: 3 9 20 null null 15 7 Output: 3
Example 2:
Input: 1 null 2 Output: 2
Constraints:
- The number of nodes in the tree is in the range [0, 10⁴]
- -100 ≤ Node.val ≤ 100
Input format: BFS level-order, space-separated, null for missing nodes.
Output format: Integer — the maximum depth.