1.描述:
给定一个二叉树,找出其最大深度。二叉树的深度为根节点到最远叶子节点的距离。
2.思路:
先判断根节点是否为空,为空返回深度为0,否则运用递归求左子树根节点的深度,再求右子数根节点深度,最后返回其中大的一个的值再加一。
3.代码:
int maxDepth(TreeNode *root) {
if(root==NULL)return 0;
int l=maxDepth(root->left);
int r=maxDepth(root->right);
return l>r?l+1:r+1;
}
4.感想:
此题不能用while循环,否则时间超限,只能选择递归算法。