Given a binary tree, find its maximum depth.
The maximum depth is the number of nodes along the longest path from the root node down to the farthest 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 maxDepth(TreeNode root) {
12: if(root==null)
13: return 0;
14: if(root.left==null&&root.right==null)
15: return 1;
16: return Math.max(maxDepth(root.left),maxDepth(root.right))+1;
17: }
18: }
Discussion:
Use recursion is straight forward and simple. The depth of the current level is the maximum depth of its siblings plus 1.
没有评论:
发表评论