剑指offer:二叉树的深度

题目:输入一棵二叉树,求该树的深度。从根结点到叶结点依次经过的结点(含根、叶结点)形成树的一条路径,最长路径的长度为树的深度。

分析:递归,一棵二叉树的高度等于1+max{左子树高度,右子树高度}

  int TreeDepth(TreeNode* pRoot)
    {
        if(pRoot==nullptr)
            return 0;
        
        if(pRoot->left==nullptr && pRoot->right==nullptr)
            return 1;
        
        int leftH=TreeDepth(pRoot->left);
        int rightH=TreeDepth(pRoot->right);
        
        return leftH>rightH?leftH+1:rightH+1;
            
    }

 

全部评论

相关推荐

犹豫的小狐狸刷了100道题:你是我在牛课上见到的最漂亮的女孩了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务