Given the root of a binary tree, invert the tree, and return its root.
Inverting a tree means swapping every left and right child recursively.
Example 1
Input: root = [4,2,7,1,3,6,9]
Output: [4,7,2,9,6,3,1]
Example 2
Input: root = [2,1,3]
Output: [2,3,1]
Example 3
Input: root = []
Output: []
Constraints:
The number of nodes in the tree is in range [0, 100].
-100 <= Node.val <= 100
Hint 1: Think recursively — swap the left and right children, then recursively invert each subtree.
Hint 2: You can also solve this iteratively using a queue (BFS).