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

104. 二叉树的最大深度

时间:2023-07-29 17:06:31浏览次数:53  
标签:right self high 二叉树 深度 节点 104 left

给定一个二叉树,找出其最大深度。

二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。

说明: 叶子节点是指没有子节点的节点。

示例:
给定二叉树 [3,9,20,null,null,15,7]

    3
   / \
  9  20
    /  \
   15   7

返回它的最大深度 3 。

# Definition for a binary tree node.
# class TreeNode:
#     def __init__(self, val=0, left=None, right=None):
#         self.val = val
#         self.left = left
#         self.right = right
class Solution:
    def maxDepth(self, root: Optional[TreeNode]) -> int:
        if not root:
            return 0
        else:
            l_high = self.maxDepth(root.left)
            r_high = self.maxDepth(root.right)
            return max(l_high, r_high)+1

深度优先遍历

一写就废,一看就会..............

标签:right,self,high,二叉树,深度,节点,104,left
From: https://blog.51cto.com/u_16123878/6893699

相关文章

  • 基于LSTM深度学习网络的时间序列预测matlab仿真
    1.算法理论概述       时间序列预测是一类重要的预测问题,在很多领域都有着广泛的应用,如金融、交通、气象等。然而,由于时间序列数据本身具有时序性和相关性,因此预测难度较大。传统的时间序列预测方法大多采用统计学方法,如ARIMA模型、指数平滑法等,但这些方法在处理非线性、......
  • 二叉树的广度优先遍历
    二叉树的广度优先遍历层序遍历设二叉树的根节点所在层数为第一层,层序遍历就是从二叉树的根节点出发,先访问第一层的根节点,然后从左到右访问第2层上的节点,以此类推,自上而下,自左至右逐层访问树的结点的过程就是层序遍历。要想用代码实现队列的层序遍历我们需要借助队列:1、先把根......
  • 101. 对称二叉树
    给你一个二叉树的根节点 root ,检查它是否轴对称。示例1:输入:root=[1,2,2,3,4,4,3]输出:true示例2:输入:root=[1,2,2,null,3,null,3]输出:false#Definitionforabinarytreenode.#classTreeNode:#def__init__(self,val=0,left=None,right=None):#s......
  • 二叉树某个节点的深度
    微信公众号:码云成化关注可了解更多的教程及进阶技巧。问题或建议,请公众号留言;如果你觉得阿云对你有所帮助,欢迎赞赏深度的定义[当前结点的层数。默认叶子节点是null节点,深度是0。其子节点是null节点,深度是1。]普通二叉树给出上图一个普通二叉树,如果计算结点深度,......
  • 第三章 指针才是C语言的精髓(嵌入式Linux与物联网软件开发 C语言内核深度解析)
    这仅仅是读《嵌入式Linux与物联网软件开发:C语言内核深度解析》pdf的知识记录 地址:指的都是某个字节的地址。比如inta的空间大小有4个字节,每个字节都有一个地址(也就是有4个地址),但是只有首字节地址才能作为整个a空间的地址。也就是说,整个内存以1个字节为基本单位划分无数个地址,......
  • 深度工作:在一个纷扰的世界里通过专注获得成功的规则
    现代商业中,协作的地位仅次于忠诚。企业把员工集结到开放式的办公室里,鼓励彼此之间随机建立关系。除了电子邮件和电话等,现在管理者又有了微信等新的协作工具。管理学家们鼓励员工成为好的企业公民,互相帮助,排忧解难。但是一股强烈的反对浪潮也正在袭来:最近的一期《哈佛商业评论》的封......
  • 揭秘爱数AnyShare认知助手:大模型深度产品化,深化人与机器的“分工协作”
    文|智能相对论作者|叶远风大模型竞逐日趋白热化,百模大战热闹非凡。但是,对产业主体或者普通看客而言,大模型究竟如何改变一线业务、实现工作方式的变革甚至组织转型,很多人并没有具象化的认知。技术厉害、产品牛,宏大的憧憬和规划下,大模型到底是怎么进入到行业一线实现落地的?最近,大......
  • 深度学习-->线性回归模型
    #线性回归#创建数据集frommxnetimportndarrayasndfrommxnetimportautogradasadnum_input=2num_examples=1000true_w=[2,-3.4]true_b=4.2x=nd.random_normal(shape=(num_examples,num_input))y=true_w[0]*x[:,0]+true_w[1]*x[:,1]......
  • 深度学习刷SOTA的trick
    作者:GordonLeehttps://www.zhihu.com/question/540433389/answer/2549775065 1.R-Drop:两次前向+KLloss约束2.MLM:在领域语料上用mlm进一步预训练(Post-training)3.EFL:少样本下,把分类问题转为匹配问题,把输入构造为NSP任务形式.4.混合精度fp16:加快训练速度,提高训练......
  • 03-二叉树的遍历
    二叉树的遍历定义:遍历是数据结构中的常见操作把所有元素都访问一遍线性数据结构的遍历比较简单分为:正序遍历和逆序遍历根据结点访问顺序的不同,二叉树的常见遍历方式有4种前序遍历(PreorderTraversal)中序遍历(inorderTraversal)后序遍历(PostorderTraversal)层序遍......