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);
}

分析:

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

总结:

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

相关推荐
橘颂TA几秒前
【笔试】算法的暴力美学——牛客 NC213140 :除2!
c++·算法·结构与算法
汀、人工智能25 分钟前
[特殊字符] 第66课:跳跃游戏
数据结构·算法·数据库架构·图论·bfs·跳跃游戏
_李小白27 分钟前
【OSG学习笔记】Day 37: NodeVisitor(顶点访问器)
笔记·学习
汀、人工智能34 分钟前
[特殊字符] 第70课:加油站
数据结构·算法·数据库架构·图论·bfs·加油站
wsoz40 分钟前
Leetcode普通数组-day5、6
c++·算法·leetcode·数组
y = xⁿ40 分钟前
【LeetCode】双指针:同向快慢针
算法·leetcode
啊哦呃咦唔鱼41 分钟前
LeetCode hot100-105从前序与中序遍历序列构造二叉树
算法
favour_you___42 分钟前
2026_4_8算法练习题
数据结构·c++·算法
汀、人工智能1 小时前
[特殊字符] 第57课:搜索旋转排序数组
数据结构·算法·数据库架构·图论·bfs·搜索旋转排序数组
倦王1 小时前
力扣日刷47
算法·leetcode·职场和发展