input: Write a python function to find the maximum depth of a binary tree.
  assert max_depth(tree) == 3  # For a tree with nodes added: [3, 9, 20, None, None, 15, 7]
  assert max_depth(tree) == 2  # For a tree with nodes added: [1, 2, 3, None, None, 4, 5]
  assert max_depth(tree) == 1  # For a tree with nodes added: [1]
output: def max_depth(root):
      if not root:
          return 0
      left_depth = max_depth(root.left)
      right_depth = max_depth(root.right)
      return max(left_depth, right_depth) + 1