题解 | #二叉树的深度#

二叉树的深度

https://www.nowcoder.com/practice/435fb86331474282a3499955f0a41e8b

/*
struct TreeNode {
    int val;
    struct TreeNode *left;
    struct TreeNode *right;
    TreeNode(int x) :
            val(x), left(NULL), right(NULL) {
    }
};*/
class Solution {
  public:
    int TreeDepth(TreeNode* pRoot) {
        return RecursionGetDepth(pRoot);
    }

  private:
    int RecursionGetDepth(TreeNode* root) {
        int leftDepth, rightDepth;
        if (root == nullptr) {
            return 0;
        } else {
            leftDepth = RecursionGetDepth(root->left);    //递归
            rightDepth = RecursionGetDepth(root->right);
            return leftDepth > rightDepth ? (leftDepth + 1) : (rightDepth +
                    1); //返回较深的一棵子树
        }

    }
};

全部评论

相关推荐

怎么起名字:早知道就不读书了,害得我送外卖还得扶眼镜
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-03 18:30
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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