首页 > 其他分享 >LeeCode-104. 二叉树的最大深度

LeeCode-104. 二叉树的最大深度

时间:2024-09-04 22:25:35浏览次数:4  
标签:int depth LeeCode 二叉树 深度 root 节点 104

要求

给定一个二叉树 root ,返回其最大深度。 二叉树的 最大深度 是指从根节点到最远叶子节点的最长路径上的节点数。 如下图所示的二叉树最大深度为5.

BinaryTree

解题思路

94题类似,采用递归调用遍历子节点。在基本结构中,节点的最大深度等于根深度(1)加上左右较大深度,左右较大的深度可以一直递归至最小根节点。

实现代码

    int maxDepth(TreeNode* root) {
        int depth=0;
        if(root)
        {
            depth++;
            int depthLeft=0;
            int depthRight=0;
            if(root->left)
            depthLeft=maxDepth(root->left);
            if(root->right)
            depthRight=maxDepth(root->right);

            depth+=max(depthLeft,depthRight);
        }
        return depth;

    }

标签:int,depth,LeeCode,二叉树,深度,root,节点,104
From: https://www.cnblogs.com/stephen2023/p/18397442

相关文章

  • 洛谷刷题之P1046
    [NOIP2005普及组]陶陶摘苹果题目描述陶陶家的院子里有一棵苹果树,每到秋天树上就会结出101010个苹果。苹果成熟的时候,陶陶就会跑去摘苹果。陶陶有个......
  • LeeCode-94. 二叉树的中序遍历
    基本概念二叉树二叉树的结构如上图所示,由一系列左-中-右节点组成的树状数据结构,其基本结构如下所示,由一个中间节点向左右分叉成两个节点,故称二叉树。中序遍历看二叉树基本的结构左-中-右三个节点,中间为Root,左边为Left,右边为Right。按顺序排列的话有C(3,2)=6种,其中左右,......
  • LeeCode打卡第十七天
    LeeCode打卡第十七天第一题:合并两个有序链表(LeeCode第21题):将两个升序链表合并为一个新的升序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。主要思想:将两个链表从头开始比较,将两个链表中的较小值存入新链表中,比较到最后,有一个链表会先为空,此时需要......
  • LeeCode打卡第十八天
    LeeCode打卡第十八天第一题:两两交换链表中的节点(LeeCode第24题):给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题(即,只能进行节点交换)。主要思想:将两个链表从头开始比较,将两个链表中的较小值存入新链表中,比较......
  • C++ 数据结构——二叉树(最最最最最实用的二叉树教程)
    本文章以实用为主,所以不多废话直接开整本文所介绍的二叉树是最基础的二叉树,不是二叉搜索树,也不是平衡二叉树,就基本的二叉树若需要Python版,请跳转到 Python数据结构——二叉树(最最最最最实用的二叉树教程)二叉树的构建二叉树为一个父节点连接到两个子节点,若还要加入新的......
  • 力扣-968监控二叉树(Java贪心详细题解)
    题目链接:968.监控二叉树-力扣(LeetCode)前情提要:本题是一道名副其实的hard题目,他考察二叉树和贪心的综合运用能力。所以我们不仅要会贪心还要会二叉树的一些知识,如果没有写二叉树类型的题目,建议大家该题可以放放,去刷其他的题目。因为本人最近都来刷贪心类的题目所以该......
  • IEC101、IEC103、IEC104、Modbus报文解析工具
    一、概述国际电工委员会第57技术委员会(IECTC57)1995年出版IEC60870-5-101后,得到了广泛的应用。为适应网络传输,2000年IECTC57又出版了IEC60870-5-104:2000《远东设备及系统第5-104部分:传输规约-采用标准传输协议集的IEC60807-5-1网络访问》。为规范该标准的国内应用,全国电......
  • 推断二叉树(递推)
    已知前序中序求后序#include<cstring>#include<cstdio>#include<iostream>usingnamespacestd;voidbinary_tree(stringmid,stringpre){ if(mid.size()>0){ charch=pre[0]; intcur=mid.find(ch); binary_tree(mid.substr(0,cur),pre......
  • Day14|第六章 二叉树 part02| 226.翻转二叉树| 101. 对称二叉树| 104.二叉树的最大深
    226.翻转二叉树(递归只能前序或者后序,中序不行)classSolution{publicTreeNodeinvertTree(TreeNoderoot){if(root==null)returnnull;swap(root);invertTree(root.left);invertTree(root.right);//swap(root);......
  • 算法与数据结构——二叉树数组表示
    二叉树数组表示在链表表示下,二叉树的存储单元为节点TreeNode,节点之间通过指针相连接。同前面的队列或栈,二叉树同样可以使用数组来表示。表示完美二叉树给定一棵完美二叉树,我们将所有节点按照层序遍历的顺序存储在一个数组中,则每个节点都对应唯一的数组索引。按照层序遍历的特......