leetcode做题笔记104. 二叉树的最大深度

给定一个二叉树 root ,返回其最大深度。

二叉树的 最大深度 是指从根节点到最远叶子节点的最长路径上的节点数。

思路一:递归

cpp 复制代码
int dfs(struct TreeNode* node){
    int rdepth = 1;
    int ldepth = 1;

    if(node->left!=NULL) ldepth = rdepth + dfs(node->left);
    if(node->right!=NULL) rdepth = rdepth +dfs(node->right);

    if(ldepth>rdepth)return ldepth;
    else return rdepth;

}
int maxDepth(struct TreeNode* root){
    if(root==NULL)return 0;
    return dfs(root);
}

分析:

本题要求二叉树的最大深度,可想到将左子树深度和右子树深度分别记录下来,最后比较左右子树深度输出最大深度

总结:

本题考察二叉树的应用,将左右子树分别递归求出最大深度输出即可

相关推荐
weixin_4588726113 分钟前
东华复试OJ二刷复盘2
算法
Charlie_lll14 分钟前
力扣解题-637. 二叉树的层平均值
算法·leetcode
爱淋雨的男人23 分钟前
自动驾驶感知相关算法
人工智能·算法·自动驾驶
ALKAOUA29 分钟前
力扣面试150题刷题分享
javascript·笔记
wen__xvn35 分钟前
模拟题刷题3
java·数据结构·算法
無限進步D44 分钟前
Java 循环 高级(笔记)
java·笔记·入门
滴滴答滴答答1 小时前
机考刷题之 6 LeetCode 169 多数元素
算法·leetcode·职场和发展
圣保罗的大教堂1 小时前
leetcode 1980. 找出不同的二进制字符串 中等
leetcode
左左右右左右摇晃1 小时前
Spring + SpringMVC 面试题整理笔记(二)
笔记
今天你TLE了吗1 小时前
JVM学习笔记:第八章——执行引擎
java·jvm·笔记·后端·学习