Leet Code 104. 二叉树的最大深度<适当参照,后面有一个求N插树的最大深度>

benders分解算法 逻辑思路整理(加星) 一般我们经常可以看到的是经典的benders,此处我也结合经典的benders梳理下思路。 阅读详情

给定一个二叉树,找出其最大深度。
二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。
说明: 叶子节点是指没有子节点的节点。
示例:
给定二叉树 [3,9,20,null,null,15,7],
返回它的最大深度 3 。
在这里插入图片描述

  • 我的题解
/**
 * Definition for a binary tree node.
 * struct TreeNode {
 *     int val;
 *     struct TreeNode *left;
 *     struct TreeNode *right;
 * };
 */

int getthedepth(struct TreeNode* root){
    int depth1;
    int depth2;
    int max;

    if(root!=NULL){
        depth1=getthedepth(root->left)+1;
        depth2=getthedepth(root->right)+1;
        if(depth1<=depth2){
            max=depth2;
        }
        else{
            max=depth1;
        }
    }
    else{
        max=0;
    }
    return max;
}

int maxDepth(struct TreeNode* root){
    return getthedepth(root);
}

简简单单一个递归,这个和我昨天遇到的题有点像,不过昨天的是N叉树,这道题简单一些。首先明确二叉树这一个简单的结构就清晰了,只有左右两个子树也比较好递归。
非空判断肯定是要放在第一位的,因为二叉树有两个子树,因此要有两个深度,深度随左右分支进行递归。在递归结束之后还要刀下面的比较语句,取到最大的深度进行返回。
其中

else{
        max=0;
    }

是用来给最后一次递归进行收尾的,因为递归到最后是NULL,NULL的深度是0。

地平线旭日X3开发板--使用Opencv显示CSI摄像头例程 但是从libsrcampy获取的摄像头图像格式是NV12,无法直接在opencv上显示或者处理,调试过程发现旭日派无法直接用opencv的VideoCapture()调用CSI摄像头,需要使用opencv来做开发的小伙伴可以做个参考,效果如下图所示。需要使用libsrcampy库来获取CSI摄像头图像,为了能够使用opencv的API来处理图像,需要增加NV12转化成bgr像素格式的函数。opencv显示图像.png。 阅读详情

相关推荐

西工大noj100题python2024第三季21-30

【代码】西工大noj100题python2024第三季21-30。

weixin_70523540的博客 1574

求二叉树的最大深度

给定一个二叉树,找出其最大深度。 二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。 借助递归把问题拆分 1+左子树的最大深度+右子树的最大深度 的最大值 1.空树,深度为0 2.只有一个根节点,没有左右子树,深度1 3.1 + max(左子树的深度+右子树的深度) /** * Definition for a binary tree node. * public class Tree...

question_mark的博客 522

基于知识图谱的职位推荐系统的设计与实现

在职位推荐系统中,实体可以包括职位、公司、技能等,而关系可以包括职位与公司的关联、职位与技能的关联等。基于知识图谱的职位推荐系统可以提供更加智能和精确的职位推荐服务。通过收集和预处理数据构建知识图谱,并设计推荐算法和用户界面,可以实现一个完整的职位推荐系统。通过利用知识图谱技术,我们可以构建一个更加智能和精确的职位推荐系统。本文将介绍如何设计和实现基于知识图谱的职位推荐系统,并提供相应的源代码。通过定义实体和关系的节点和边,可以将数据存储在图数据库中,并建立它们之间的关系。

RiqaEditor的博客 1667

二叉树最大深度

# Definition for a binary tree node. # class TreeNode: # def __init__(self, x): # self.val = x # self.left = None # self.right = None class Solution: #递归法 def max...

这些个事儿 274

机器翻译:一文掌握离线翻译库 Argos Translate 的详细使用

Argos Translate是一个开源的离线翻译库,支持多语言互译。它通过独立的翻译包(.argosmodel文件)实现翻译功能,每个包对应特定语言对的翻译任务。安装简单,只需pip安装argostranslate库,并通过命令行或Python API管理翻译包。支持批量处理和长期运行优化性能。对于不支持的语种,可采用桥接翻译或自行训练模型。该库提供CLI工具和Python API,适合集成到各种应用中,还可用于批量文件翻译。主要局限包括缺乏上下文理解、专业领域翻译不精准等。

数据知道的博客 3521

【软考中级网络工程师】知识点之 IP QoS 技术

本文围绕软考中级网络工程师必备的 IP QoS 技术展开,系统阐述其核心知识。首先解析 IP QoS 的定义、重要性及应用场景,揭示其在视频会议、在线游戏等场景的关键作用;接着深入讲解技术原理,包括流量分类与标记、整形与限速、拥塞管理及 RSVP 协议;随后对比尽力而为、IntServ、DiffServ 三种服务模型的特点;还介绍了配置实践与案例分析,探讨其与 SDN、5G 等技术的融合趋势。旨在帮助读者全面掌握 IP QoS 技术要点,为网络规划与优化提供理论与实践指导。

邓邓子的博客 1086

【LeetCode104】二叉树的最大深度

一.题目:二叉树的最大深度 二.算法思想 ​​​​​​​ 三.代码 1

发现问题,并解决问题,批判性思维 841

Android SystemUI——自定义状态栏和导航栏(十二)

通过前面的文章内容,我们了解了Android系统原生的状态栏StatusBar和车载系统状态栏CarStatusBar的启动流程以及视图构建流程,这里我们来简单的看一下自定义状态栏和导航栏视图的实现流程。

小旭的专栏 2009

二叉树(六):二叉树的最大深度与最小深度

一、二叉树的最大深度 二叉树的最大深度 二叉树的最大深度可以通过递归法,层次遍历和深度优先遍历实现,但是最简单最容易的就是递归法。 1、递归法 1)确定递归三要素 递归函数的返回值和参数:返回值为当前节点的最大深度,参数为当前节点 递归函数的单层逻辑:当前节点的最大深度 = 1 + 左子树或右子树的最大深度 递归函数的终止条件:当前节点为空时,当前节点最大深度为0 2)递归方法代码 class Solution { public: //递归参数及返回值 int maxDepth(Tre

qq_42138662的博客 9092

(八)DDR_PHY架构及功能——(PUB组成、初始化及Training流程、Clock关系)

文章目录一、DDR_PHY结构组成1.1、DDR Memory子系统1.2、DDR_PHY架构组成1.3、PUB模块功能实现流程1.3.1、DDR系统初始化流程1.3.2、PLL初始化流程 一、DDR_PHY结构组成 1.1、DDR Memory子系统   Memory子系统主要由DDR Controller和DDR_PHY(含DDR_IO)两个部分组成。DDR Controller主要承担其它子系统(如CPU)与Memory子系统进行数据交互时的传输效率及调度,DDR_PHY主要负责数据交互过程中的传输速

Mr.翟的博客 1万+

实战:RK3568 Android14 点亮 LVDS 屏幕

4组数据 (D0~D3) + 1组时钟 (CLK)。最大支持 1280x800 @ 60Hz。8组数据 (Even03, Odd03) + 2组时钟。支持 1080P 及以上。/ {/* 背光与电源 *//** 关键配置:数据格式映射* 可选值: "jeida-18", "jeida-24", "vesa-24"* 6位屏选 xx-18, 8位屏选 xx-24* 颜色不对(偏色/底片效果)就换 VESA <-> JEIDA*/

qq_33427070的博客 1164

Leet Code 559. N 叉树的最大深度(已改进,动态创建数组+选择排序 or 直接赋值递归比较)

给定一个 N 叉树,找到其最大深度。 最大深度是指从根节点到最远叶子节点的最长路径上的节点总数。 N 叉树输入按层序遍历序列化表示,每组子节点由空值分隔(请参见示例)。 题目地址:N叉树的最大深度 或直转到:https://leetcode-cn.com/problems/maximum-depth-of-n-ary-tree/ 我的题解 int myfunc(struct Node* root){ int max; max=0; if(root!=NULL){ .

小学生高某的博客 157

Python爬虫实战:逆向工程与异步处理攻克Pinterest无限滚动瀑布流

我们将从零开始,逐步分析其数据接口,构建一个功能完整的爬虫,并深入探讨反爬虫策略的应对、性能优化以及数据存储等高级主题。: 在实际爬取中,你需要先访问一次Pinterest主页,获取初始的Cookie和CSRF Token,然后再发起API请求。: Python爬虫,Pinterest,无限滚动,瀑布流,异步IO,httpx,逆向工程,API接口,动态内容,反爬虫。你会很快发现一些关键的请求模式。:页面初始加载有限内容,随着用户滚动,新的图片块通过AJAX动态加载,实现“永无止境”的浏览。

2201_76125261的博客 551

LeetCode

100. 相同树 /** * 100. 相同的树 */ public class IsSameTree { public boolean isSameTree(TreeNode p, TreeNode q) { if (p == null &amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp; q == null) {

ZHANGYONGHAO604的博客 395

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

leetcode各类题型记录

文章目录双指针(三指针)11. 盛最多水的容器15. 三数之和17. 电话号码的字母组合回溯(用StringBuilder,最后需要撤销,即回溯)DFS(用String,最后不需要撤销,即DFS) 双指针(三指针) 11. 盛最多水的容器 参考 15. 三数之和 参考 17. 电话号码的字母组合 参考 模式识别 关键字:所有组合 首先想到穷举,需要搜索算法-----回溯 回溯(用StringBuilder,最后需要撤销,即回溯) class Solution { ArrayList<

qq_42647047的博客 2213

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

Leetcode 322. 零钱兑换——DP问题总结————重复书写硬币问题

给定不同面额的硬币 coins 和一个总金额 amount。编写一个函数来计算可以凑成总金额所需的最少的硬币个数。如果没有任何一种硬币组合能组成总金额,返回 -1。 你可以认为每种硬币的数量是无限的。 原题地址:零钱兑换 或直转到:https://leetcode-cn.com/problems/coin-change/ 由于直接上动态规划中等难度的题我有点晕,这直接借鉴一下知乎大佬的文章,并加入自己的理解。 先上代码 int min(int a, int b) { return a &lt.

小学生高某的博客 609

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

2019年7月26日 今天对Unity进行一些基础上的的理解和巩固

过去上来就是一些应用,现在是对基础知识的学习和已许欸知识的巩固。 一、窗口界面 Scene 场景编辑窗口 小手图标:拖动屏幕并进行移动 指针图标:移动选择物体的唯一 旋转:相对旋转 修改:改变物体的scale 在Scene中一直按着鼠标右键可以对视角进行旋转,期间按照asdw可以进行视角的移动,按qe可以升高或者降低视角 Game 游戏呈现画面 游戏运行当中修改不会存盘,且游戏窗口左上角可...

小学生高某的博客 580

2019年7月28日 恶心人

今天我一个早上都在debug,一个bug,弄了我一天多。角色为什么在静止的时候速度不为0? ` 以下是更新函数 {//移动 pendingVelocity.z = 0f; cc.Move(pendingVelocity * Time.deltaTime); animator.SetFloat("Speed", cc.velocity.magnitude); an...

小学生高某的博客 563

2019年7月20日学习日记

嘻嘻,坚持下来了,第六天,第四个游戏也完成了。其中其中真的有好多艰辛,加油。 下面的总结接上19号的博客。之前已经实现了大部分,得分以及游戏结束的UI已经设置了,差的不多了。今天遇到了让我脑袋爆炸的几个问题。首先,先从简单的说起。由于这个游戏是闯关游戏,我们要设置障碍。因为物体的运动是最基本的,我们最先对物体运动以及基本碰撞是没毛病的。在此基础上我们设置关卡。 先是对模型的拖拽,组成一个通道,其中...

小学生高某的博客 534

2019年7月21日学习日记

今天今天小bug弄了我我半天,得了,这第四个游戏是半成品,不过也要把今天累计的经验和教训总结一下。 1、拉入场景,拉入新相机,拉入新角色 2、仔细一看,这次给的场景和我们做flappybird时候给的有异曲同工之妙,都是两块,再仔细想,这次我们也要执行拼接和背景的平移以完成道路一直有的任务。 3、其次拉入的任务要创建新的根节点装上去,并且创建collider和rigidbody,并提前把anima...

小学生高某的博客 502

2019年7月18日 学习日记

由于今天没有边看视频边写,事情有一点多,我就在一起总结了。这第三个游戏是横版跳跃游戏,其实仔细想想和第三个游戏差不多,其模型的给予大大降低了我们制作游戏的难度。我会从第一步到最后一步慢慢滤清思路,而不像昨天一样列出重点后写一坨。44:30 加入材质包 拉入过关所需台阶,并赋予其不同颜色,tag也要改变,以便于做出区别。游戏的规则是人和台阶不同颜色的时候会死,因此设置触发器也要有相应的判断依...

小学生高某的博客 434

Leetcode 91. 解码方法——————从我刷了五十多道力扣后决定从C转向C++再由这题让我下定先好好学习算法的那些事

一条包含字母 A-Z 的消息通过以下映射进行了 编码 : ‘A’ -> 1 ‘B’ -> 2 … ‘Z’ -> 26 要 解码 已编码的消息,所有数字必须基于上述映射的方法,反向映射回字母(可能有多种方法)。例如,“11106” 可以映射为: “AAJF” ,将消息分组为 (1 1 10 6) “KJF” ,将消息分组为 (11 10 6) 注意,消息不能分组为 (1 11 06) ,因为 “06” 不能映射为 “F” ,这是由于 “6” 和 “06” 在映射中并不等价。 给你一个只含.

小学生高某的博客 411

2019年7月23日 学习日记

今天是放松的一天,没有学习,除了晚上把昨天的博客给补完了。

小学生高某的博客 398

2019年7月19日 学习日记

唉,今天的事情好多,压得我喘不过气,亲人的生日父母的思念哥们生病朋友的烦心事和组织内的人员动荡。影响了学习进度,让我脑袋晕晕的。这里我简单的对今天的学习做一下总结。 今天我学习做的是一个轻量版的flappy bird,从最开始的3d到如今的2d。感觉今天竟然比昨天简单,应该是有了基础并且真的是横版的入门。首先是3d背景的删除,是在window中的lighting选项,之后就要创建我们的游戏背景,分...

小学生高某的博客 389

2019年7月16日学习日记

** 2019年7月16日学习日记 ** Morning 今天主要学习前两个小游戏的制作,没有昨天那个游戏那么复杂,显得没有基础做起来比较费劲。今天是第一次用外接显示屏学习,以前都是直接用作放大的屏幕。win10对于外接显示屏有很好的兼容性,在滑动过程中虽然有一些累手腕,却没有什么不适感。能打打提高学习效率。 相比昨天做的横版过关游戏,今天这个简单多了。主要分为几个步骤。 第一步 第二步 ...

小学生高某的博客 381

2019年7月24日 学习日记

上一次(22日的学习日记中)我们最后提到了AI的制作,其实利用了时间的推移并把动作数据化按照参数传入方法,其中也不乏随机数。当然也有死亡时候特效的体现,复习了Instantiate方法的调用 ...

小学生高某的博客 375
上一篇: Leet Code 面试题 04.02. 最小高度树 同 《108. 将有序数组转换为二叉搜索树》(二分法传参初探)
下一篇: Leet Code 897. 递增顺序查找树——————(记得不用全局变量再而是指针传参试一试)(力扣老哥用的模拟栈的中序,太妙了)
Neepu_G.job
博客等级 码龄8年 7粉丝 69原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值