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

分析:

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

总结:

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

相关推荐
D e re k ZH2 小时前
C++ 系统学习手记:从语法细节到工程实践
开发语言·数据结构·c++·算法
2603_969694852 小时前
JDBC 基础学习笔记:API 核心原理解析与 CRUD 代码实操
数据库·笔记·mysql·学习方法·database·sql注入
石小石Orz3 小时前
AI 正在蚕食我们的编码能力
前端·后端·算法
迪康coolmu3 小时前
出差终端数据安全落地实战:基于迪康端点安全一体化管理系统的四道防线实践
运维·服务器·经验分享·笔记·其他·安全·php
民乐团扒谱机4 小时前
【微实验】NSGA-II(非支配排序遗传算法)——解决多目标优化问题的“自然选择模拟器”
linux·人工智能·算法
青少儿编程课堂4 小时前
蓝桥杯·全国青少年信息素养大赛·电子学会Python/C++考级:中缀表达式求值解析
c++·python·算法·bfs·信息学竞赛
文丑颜不良啊5 小时前
LeetCode2261~2280题目解析
java·leetcode
无咎.lsy6 小时前
《机器学习》笔记
笔记·机器学习
武子康7 小时前
Qwen-Drive 到底是什么:4B 级 VLM 如何成为驾驶策略底座
人工智能·算法·机器学习
坤坤子吖7 小时前
Linux网络编程:TCP服务器的多进程与多线程实现
linux·服务器·开发语言·网络·c++·笔记·学习