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.
Have you met this question in a real interview?
求一棵树的高度,很显然,递归,三行代码。。。
- int maxDepth(TreeNode *root) {
- if(root==NULL)
- return 0;
- return max(maxDepth(root->left),maxDepth(root->right))+1;
- }
第二种做法:遍历
int level;
int result;
int maxDepth(TreeNode *root) {
level++;
if(root==NULL){
result=max(result,level-1);
}
else{
maxDepth(root->left);
maxDepth(root->right);
}
level--;
return result;
}