leecode111——二叉树最短路径
递归三部曲:
最小深度是从根节点到最近叶子节点的最短路径上的节点数量
(1)确定参数和返回值,
参数为传入根节点,再根据此遍历左右左右树的节点。返回最短路径,即int类型。
(2)确定终止条件:
当root节点为空时,返回0
当 root 节点左右孩子都为空时,返回 1
(3)确定单层递归条件
当 root 节点左右孩子有一个为空时,返回不为空的孩子节点的深度
当 root 节点左右孩子都不为空时,返回左右孩子较小深度的节点值
我最开始写的:
int leftDepth = getDepth(node->left);
int rightDepth = getDepth(node->right);
int result = 1 + min(leftDepth, rightDepth);
return result;
这样就犯了误区;
class Solution {public int minDepth(TreeNode root) {if(root==null){return 0;}else if(root.left==null&&root.right==null){return 1;}else{int leftDepth=minDepth(root.left);//遍历的9int rightDepth=minDepth(root.right);//遍历的20,最终为2if(leftDepth==0){return rightDepth+1;}else if(rightDepth==0){return leftDepth+1;}else{int cur=Math.min(leftDepth,rightDepth)+1;return cur;}}}
}
相关文章:
leecode111——二叉树最短路径
递归三部曲: 最小深度是从根节点到最近叶子节点的最短路径上的节点数量 (1)确定参数和返回值, 参数为传入根节点,再根据此遍历左右左右树的节点。返回最短路径,即int类型。 (2)确…...
Swift学习教程大纲
以下是Swift学习教程的大纲: 第一部分:基础知识 Swift简介 什么是Swift? Swift的历史和发展 Swift的特点和优势 开发环境的搭建 安装Swift编译器 配置开发环境 第一个Swift程序 Hello World程序 程序的结构 编译和运行程序 数据…...
HTML 基础知识
HTML基础知识 1. VSCode的安装与配置 下载地址 https://code.visualstudio.com/ 安装插件 Live Server Auto Rename Tag 自动格式化 点击 settings,然后输入format,然后勾选上 Format On Save。 2. HTML 基础标签 2.1 文件结构 快捷键࿱…...
国考省考结构化面试:综合分析题,名言哲理(警句观点启示)、漫画反驳题等
国考省考结构化面试:综合分析题,名言哲理(警句观点启示)、漫画反驳题等 2022找工作是学历、能力和运气的超强结合体! 公务员特招重点就是专业技能,附带行测和申论,而常规国考省考最重要的还是申论和行测&a…...
【前端面经】CSS-浮动和清除浮动的方式
浮动和清除浮动的方式 在页面布局中,我们经常会用到浮动来实现一些特殊效果,但是浮动也会引起一些问题。在使用浮动布局时,我们需要清除浮动以避免出现布局问题。本文将介绍浮动的相关知识以及清除浮动的方式。 浮动 浮动是 CSS 中的一种布…...
【Android取证篇】ADB版本更新详细步骤
【Android取证篇】ADB版本更新详细步骤 更新ADB版本,解决无法连接设备问题【蘇小沐】 ADB没有自动更新的命令,我们需要下载新的ADB进行替换更新。 1、ADB查找 打开任务管理器(快捷键shiftctrlEsc或WinX),在“详细信…...
【rust】| 02——语法基础_变量(不可变?)和常量
系列文章目录 【rust】| 00——开发环境搭建 【rust】| 01——编译并运行第一个rust程序 【rust】| 02——语法基础_变量(不可变?)和常量 文章目录 1. 变量1.1 变量的定义1.2 试验变量的不可变特性 2. 常量2.1 常量的定义 3. 覆盖(同名变量)3.1 修改已定义变量的数据类型3.2 1…...
JavaScript实现在键盘输入按键,浏览器进行显示的代码
以下为实现在键盘输入按键,浏览器进行显示的代码和运行截图 目录 前言 一、在键盘输入按键,浏览器进行显示 1.1 运行流程及思想 1.2 代码段 1.3 JavaScript语句代码 1.4 运行截图 前言 1.若有选择,您可以在目录里进行快速查找…...
精炼计算机网络——物理层(二)
文章目录 前言2.4信道复用技术2.4.1 频分复用、时分复用和统计时分复用2.4.2 波分复用2.4.3 码分复用 2.5 数字传输系统2.6 带宽接入技术2.6.1 ADSL技术2.6.2 光纤同轴混合网(HFC网)2.6.3 FTTx技术 总结 前言 上篇文章,我们初步了解了物理层…...
ChatGPT直接访问,Edge浏览器-免费ChatGPT保姆级教程
人工智能大浪潮已经来临,对于ChatGPT,我觉得任何一个玩互联网的人,都应该重视起来,用起来。但是国内使用需要解决科学上网、注册、收费等繁琐问题。 所以,今天这篇文章就来推荐一个插件,无需任何繁琐操作&…...
1010. 总持续时间可被 60 整除的歌曲
题目: 在歌曲列表中,第 i 首歌曲的持续时间为 time[i] 秒。 返回其总持续时间(以秒为单位)可被 60 整除的歌曲对的数量。形式上,我们希望下标数字 i 和 j 满足 i < j 且有 (time[i] time[j]) % 60 0。 示例 1&a…...
基于Spring Boot的婚恋系统
在当今的社会,婚恋市场的需求量越来越大,而互联网技术的发展也为婚恋市场的发展提供了更多的机会。基于Spring Boot的婚恋系统正是为了满足市场需求而诞生。 什么是Spring Boot Spring Boot是一个非常流行的Java框架,它可以极大地简化Sprin…...
unity愤怒的小鸟学习制作(一)
基础知识已经差不多了,现在开始模仿敲代码然后在模仿中熟悉软件和语法 视频链接和素材如下:视频 目录 第一部分:游戏逻辑1、新建2D工程2、创建三个场景3、导入游戏需要的资源4、开始编辑02-game4.1 裁切图片4.2 初步编辑4.3 实现小鸟的拖拽4…...
建筑专业可以转行学云计算吗?
当然可行。 在过去的几年中,我们已经帮助很多建筑土木工程专业的同学转行学习云计算技术,尤其是在建筑信息化编程方向。近年来,云计算行业持续发展,涉及到众多领域,如云数据中心、云安全、云存储、云计算机服务等。云…...
网络安全:namp扫描工具
-sP可以扫描一个网段ip以及状态和基本信息,10.1.1.2-3就是扫描2和3这两个ip的主机 -p可以扫描指定ip对应主机的端口号,可以是一个范围 nmap简单扫描:nmap 地址 检查地址是否在线以及open的端口号 在端口开放,不一定可以与对方正常…...
java错题总结(19-21页)
链接:关于Java中的ClassLoader下面的哪些描述是错误的_用友笔试题_牛客网 来源:牛客网 B:先讲一下双亲委派机制,简单来说,就是加载一个类的时候,会往上找他的父类加载器,父类加载器找它的父类加…...
总结846
学习目标: 月目标:5月(张宇强化前10讲,背诵15篇短文,熟词僻义300词基础词) 周目标:张宇强化前3讲并完成相应的习题并记录,英语背3篇文章并回诵 每日必复习(5分钟&#…...
[ubuntu][原创]ubuntu上安装stable-diffusion-webui
下载源码: git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui 一般方法就是: bash webui.sh 但是很遗憾这个国内很难成功,而且很容易陷入困境,因此需要下面方法 核心思想:环境和源码分开安装 下…...
【数组排序算法】
目录 一、数组排序算法1、冒泡排序算法1.1、图形解释1.2、冒泡算法的脚本写法 二、直接选择排序1.1、动态图解1.2、直接选择排序算法的脚本编写 三、直接插入排序1.1、基本思想:1.2、动态图解1.3、直接插入排序的算法脚本编写 四、反向序列算法1.1、反向序列算法的脚…...
制造企业选择库存管理条码工具需要关注哪些点?
Dynamsoft Barcode Reader SDK 一款多功能的条码读取控件,只需要几行代码就可以将条码读取功能嵌入到Web或桌面应用程序。这可以节省数月的开发时间和成本。能支持多种图像文件格式以及从摄像机或扫描仪获取的DIB格式。使用Dynamsoft Barcode Reader SDK,…...
PostgreSQL 12 + PostGIS 3.4.2 完整部署+迁移+数据恢复避坑指南(新手可复制,全程无报错)
环境说明(核心前提,必看) 本次实操目标:搭建可正常运行的GIS数据库环境,完成跨服务器数据库拆分迁移,恢复已有空间数据备份,确保PostGIS空间功能、索引全部可用,具体环境如下&#…...
小个子春天怎么穿?记住这四二法则显高十厘米
小个子女生的春天穿搭,核心诉求只有一个:显高。但显高不等于穿高跟鞋,也不等于把衣服改短。真正的显高是调整比例,让视觉重心上移。我总结了一个“四二法则”,四个技巧加两个雷区,照着穿,视觉上…...
湿敏电阻(Humidity Sensitive Resistor)气敏电阻
湿敏电阻(Humidity Sensitive Resistor)&气敏电阻 湿敏电阻是一种对环境湿度(尤其是相对湿度 RH)敏感的电阻器, 湿度升高 → 电阻通常降低(多数类型)湿敏电阻器可分为正温度特性湿敏电阻器(阻值随湿度增大而增大)和负温度特性湿敏电阻器(阻值随湿度增大而减小). 本质 利用材…...
7分钟掌握WorkshopDL:打破平台壁垒的Steam创意工坊模组下载终极方案
7分钟掌握WorkshopDL:打破平台壁垒的Steam创意工坊模组下载终极方案 【免费下载链接】WorkshopDL WorkshopDL - The Best Steam Workshop Downloader 项目地址: https://gitcode.com/gh_mirrors/wo/WorkshopDL 你是否在Epic Games Store或GOG平台购买了游戏&…...
如何解决微信QQ语音无法播放?Silk音频转换工具让跨设备播放不再难
如何解决微信QQ语音无法播放?Silk音频转换工具让跨设备播放不再难 【免费下载链接】silk-v3-decoder [Skype Silk Codec SDK]Decode silk v3 audio files (like wechat amr, aud files, qq slk files) and convert to other format (like mp3). Batch conversion su…...
如何利用Clef Handbook进行有效会议管理:5个关键原则 [特殊字符]
如何利用Clef Handbook进行有效会议管理:5个关键原则 🚀 【免费下载链接】handbook An employee handbook built for inclusion 项目地址: https://gitcode.com/gh_mirrors/handbook6/handbook 在当今快节奏的工作环境中,高效会议管理…...
终极无损音频压缩指南:FLAC 1.5.0完整教程与实战应用
终极无损音频压缩指南:FLAC 1.5.0完整教程与实战应用 【免费下载链接】flac Free Lossless Audio Codec 项目地址: https://gitcode.com/gh_mirrors/fl/flac 在数字音频的世界中,存储空间与音质质量往往难以兼得,但FLAC(Fr…...
MaixinVoiceAI 3.0 助力高校后勤报修自动化
在校园规模不断扩大、后勤服务需求持续攀升的当下,报修服务已成为高校保障教学秩序、提升师生满意度、塑造校园管理口碑的关键环节。但现实中,高校后勤报修体系普遍面临诸多难题:报修渠道分散、响应不及时,师生需反复描述故障情况…...
计算机三级嵌入式30天高效备考攻略——从零基础到通关秘籍
1. 零基础如何30天攻克计算机三级嵌入式? 第一次接触计算机三级嵌入式考试的同学,往往会被"嵌入式"三个字吓到。其实这个考试更像是"嵌入式系统知识入门认证",完全不需要硬件开发经验。我当年也是零基础备考,…...
如何选用激光测距用晶振来提升精度?
在选择激光测距用晶振时,需考虑频率稳定性、封装尺寸和应用环境。陶瓷晶振以其优越的频率稳定性特点,特别适合用于高精度测距任务。其在温度变化和外部干扰下仍能保证准确的输出,从而提升测量结果的可靠性。同时,贴片声表晶振凭借…...
