Minimum depth of the tree

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.

 

Java:

/** 
 * Definition for binary tree 
 * public class TreeNode { 
 *     int val; 
 *     TreeNode left; 
 *     TreeNode right; 
 *     TreeNode(int x) { val = x; } 
 * } 
 */ 
public class Solution { 
    public int minDepth(TreeNode root) { 
        if(root==null) 
            return 0; 
        else if (root.left==null && root.right!=null)    //pay attetion to unbalanced situation! 
            return minDepth(root.right)+1; 
        else if (root.right==null && root.left!=null) 
            return minDepth(root.left)+1; 
        else 
            return Math.min(minDepth(root.left), minDepth(root.right))+1; 
    } 
}

posted on 2014-11-20 12:55  Jack_Cheng  阅读(93)  评论(0)    收藏  举报