Leetcode: Minimum Depth of Binary Tree

时间:2014-05-10 01:40:13   收藏:0   阅读:293

这道题因为不仔细的缘故两次过,与Maximum Depth of Binary Tree问题类似,区别在于这个问题中,如果一个节点左子树为空、右子树有值,则该节点的深度应取决于右子树,而不能直接取min{左,右}

bubuko.com,布布扣
 1 /**
 2  * Definition for binary tree
 3  * public class TreeNode {
 4  *     int val;
 5  *     TreeNode left;
 6  *     TreeNode right;
 7  *     TreeNode(int x) { val = x; }
 8  * }
 9  */
10 public class Solution {
11     public int minDepth(TreeNode root) {
12         if(root==null) return 0;
13         int depleft=minDepth(root.left);
14         int depright=minDepth(root.right);
15         if(depleft==0 && depright!=0) return depright+1;
16         if(depleft!=0 && depright==0) return depleft+1;
17         if(depleft==0 && depright==0) return 1;
18         return Math.min(depleft, depright)+1;
19     }
20 }
bubuko.com,布布扣

 

Leetcode: Minimum Depth of Binary Tree,布布扣,bubuko.com

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!