給定一個二叉樹,找出其最大深度。
二叉樹的深度為根節點到最遠葉子節點的距離。
樣例
給出一棵如下的二叉樹:
1
/ \
2 3
/ \
4 5
這個二叉樹的最大深度為
3
.
分析:這個題看起來好簡單的。如果根節點不存在,那麼深度為0;如果存在根節點,那麼最大深度=1+max{左子樹深度,右子樹深度}
class Solution {
public:
int maxDepth(TreeNode *root) {
// write your code here
if(root==NULL) return 0;
int leftDepth = maxDepth(root -> left) + 1;
int rightDepth = maxDepth(root -> right) + 1;
return max(leftDepth, rightDepth);
}
};