Minimum Depth of Binary Tree [LeetCode]

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.

Summary: BFS or DFS with recursion.

 1     int minDepth(TreeNode *root) {
 2         if(root == NULL)
 3             return 0;
 4         if(root->left == NULL && root->right == NULL)
 5             return 1;
 6         if(root->right == NULL)
 7             return minDepth(root->left) + 1;
 8         if(root->left == NULL)
 9             return minDepth(root->right) + 1;
10         return min(minDepth(root->left), minDepth(root->right)) + 1;
11     }

 

posted @ 2013-11-29 06:34  假日笛声  阅读(170)  评论(0编辑  收藏  举报