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.
Note: A leaf is a node with no children.
Example:
Given binary tree [3,9,20,null,null,15,7]
,
return its depth = 3.
很简单的二叉树题目,直接看代码就ok了。
int maxDepth(struct TreeNode* root) {
if(root==NULL) return 0;
if(root->left==NULL&&root->right==NULL)
return 1;
else if(root->left!=NULL&&root->right==NULL)
return maxDepth(root->left)+1;
else if(root->left==NULL&&root->right!=NULL)
return maxDepth(root->right)+1;
else
return _max(maxDepth(root->left)+1,maxDepth(root->right)+1);
}
int _max(int a,int b)
{
if(a>b)
return a;
else
return b;
}