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

分析:

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

总结:

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

相关推荐
徐小夕14 小时前
JitWord 3.0 正式发布,高精度Word异构解析+复杂组件兼容,打造web端协同Word编辑器
前端·vue.js·算法
通信小呆呆1 天前
当算法有了“五感”:多模态数据融合如何向人体感官协同学习?
人工智能·学习·算法·机器学习·机器人
benben0441 天前
强化学习之DQN算法族(基于gymnasium开发)
算法
何以解忧,唯有..1 天前
Go语言循环语句详解:for、range与循环控制
开发语言·算法·golang
闪闪发亮的小星星1 天前
高斯光以及高斯光公式解释
笔记
想吃火锅10051 天前
【leetcode】88.合并两个有序数组js
算法
cqbzcsq1 天前
CellFlow虚拟细胞论文阅读
论文阅读·人工智能·笔记·学习·生物信息
生成论实验室1 天前
机器人:一个自主运动的系统
人工智能·算法·语言模型·机器人·自动驾驶·agi·安全架构
Qres8211 天前
算法复键——树状数组
数据结构·算法