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.
Solution:
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)
13: return 0;
14: if(root.left==null&&root.right!=null)
15: return minDepth(root.right)+1;
16: else if(root.right==null && root.left!=null)
17: return minDepth(root.left)+1;
18: else if(root.left==null && root.right==null)
19: return 1;
20: else
21: return Math.min(minDepth(root.left),minDepth(root.right))+1;
22: }
23: }
Discussion:
Similar to maximum depth of binary tree.
没有评论:
发表评论