Leetcode: Minimum Depth of Binary Tree
时间:2014-05-10 01:40:13
收藏:0
阅读:293
这道题因为不仔细的缘故两次过,与Maximum Depth of Binary Tree问题类似,区别在于这个问题中,如果一个节点左子树为空、右子树有值,则该节点的深度应取决于右子树,而不能直接取min{左,右}
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 }
评论(0)