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

分析:

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

总结:

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

相关推荐
阿米亚波8 小时前
【EVE-NG 实战】防火墙基础(VLAN · VRRP · NAT · ACL · 静态路由)
运维·网络·笔记·网络协议·计算机网络·网络安全·运维开发
想吃火锅10059 小时前
【leetcode】56.合并区间js
算法·leetcode·职场和发展
imuliuliang9 小时前
可合并堆在多任务调度中的优势与实现技巧7
算法
学究天人9 小时前
数学公理体系大全:Comprehensive Collection of Mathematical Axiom Systems(卷6)
网络·算法·数学建模·动态规划·几何学·图论·拓扑学
wabs6669 小时前
关于动态规划【力扣72.编辑距离的思考】
算法·leetcode·动态规划
用户333239768849 小时前
我做了一个 RepoMind:让 AI 写架构前,先去看看真实开源项目
算法
chh5639 小时前
C++--list
开发语言·数据结构·c++·学习·算法·list
killerbasd9 小时前
总结 7。10
人工智能·算法·机器学习
林间码客9 小时前
RAG系统评估指南:从入门到实践
人工智能·算法·机器学习
凌波粒10 小时前
LeetCode--47.全排列 II(回溯算法)
算法·leetcode·职场和发展