Given a binary tree, find its minimum depth.
The minimum depth is the number of nodes along the shortest path from the root node down to the nearest leaf node.
Note: A leaf is a node with no children.
Example:
Given binary tree [3,9,20,null,null,15,7],
C++
int minDepth(TreeNode* root) {
return DFS(root);
}
int DFS(TreeNode* root)
{
if(root == nullptr)
return 0;
if(!root->left)
return DFS(root->right)+1;
if(!root->right)
return DFS(root->left)+1;
return min(DFS(root->left)+1,DFS(root->right)+1);
}