【树】二叉树的最大深度

做题时思路:运用递归

  1. 递归结束条件:如果传进来的结点为NULL,返回0
  2. 调用自身,查找左子树的深度和右子树的深度。进行比较
  3. 如果左子树深度比较大,返回左子树深度+1。否则返回右子树深度+1

代码:

int maxDepth(struct TreeNode* root){
    if(root == NULL)
        return 0;
    else {
        int m = maxDepth(root->left);
        int n = maxDepth(root->right);
        if(m > n)
            return m+1;
        else
            return n+1;
    }
}