【CSDN 每日一练 ★☆☆】【二叉树/递归】二叉树的最小深度

news2024/11/17 13:32:22

【CSDN 每日一练 ★☆☆】【二叉树/递归】二叉树的最小深度

二叉树 递归

题目

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

最小深度是从根节点到最近叶子节点的最短路径上的节点数量。

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

示例

示例 1:

输入:root = [3,9,20,null,null,15,7]
输出:2

示例 2:
输入:root = [2,null,3,null,4,null,5,null,6]
输出:5

提示
  • 树中节点数的范围在 [0, 105] 内
  • -1000 <= Node.val <= 1000
Java实现
class TreeNode {
    int val;
    TreeNode left;
    TreeNode right;
    TreeNode(int x) {
        val = x;
    }
}
public int minDepth(TreeNode root) {
    if (root == null) {
        return 0;
    }
    if (root.left == null && root.right == null) {
        return 1;
    }
    int min_depth = Integer.MAX_VALUE;
    if (root.left != null) {
        int countLeft = 1;
        countLeft += minDepth(root.left);
        min_depth = Math.min(countLeft, min_depth);
    }
    if (root.right != null) {
        int countRight = 1;
        countRight += minDepth(root.right);
        min_depth = Math.min(min_depth, countRight);
    }
    return min_depth;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1155935.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

visio中没有的图标怎么找以及如何导入

1、收藏夹&#xff1a;再也不用担心找不到图标位置了 很多人也许都不知道&#xff0c;Visio自带一个收藏夹&#xff0c;类似于浏览器的书签栏&#xff0c;可以将常用的图标收藏起来&#xff08;通过拖拉的方式&#xff09;&#xff1a; 注意&#xff1a;收藏夹里面不仅可以收藏…

图数据库Neo4j——Neo4j简介、数据结构 Docker版本的部署安装 Cypher语句的入门

前言 MySQL是一种开源的关系型数据库管理系统&#xff0c;使用SQL作为其查询语言&#xff0c;常见的关系型数据库有MySQL、Oracle、SQL Server、PostgreSQL等。相关博客文章如下&#xff1a; 【合集】MySQL的入门进阶强化——从 普通人 到 超级赛亚人 的 华丽转身PostgreSQL数…

分享程序员赚钱的一些门路

引言 实现财务自由几乎是每一个人的梦想&#xff0c;程序员也不另外。都梦想着在工作之外找一个副业&#xff0c;边上着班&#xff0c;边“开启自己的事业”。 可是&#xff0c;很多人都只是停留在想想而已&#xff0c;或者总是在等待一个机会&#xff0c;如此而已。时间一天…

因存在色情内容,夸克被罚50万元

媒体经济的繁荣、自媒体、直播等各种形式的信息传播疯狂发展&#xff0c;但是各种形式的信息资源大规模生产时&#xff0c;“色情”&#xff0c;“暴力”的图像和视频不可控的滋生&#xff0c;特别是某些 APP 或浏览器。一旦打开&#xff0c;满屏都是“哥哥&#xff0c;快来啊”…

Linux学习第27天:Platform设备驱动开发(一): 专注与分散

Linux版本号4.1.15 芯片I.MX6ULL 大叔学Linux 品人间百味 思文短情长 专注与分散是我在题目中着重说明的一个内容。这是今天我们要学习分离与分层概念的延伸。专注是说我们要专注某层驱动的开发&#xff0c;而对于其他层则是芯片厂商…

在centos服务器中完成jdk,tomcat,MySQL的安装以及前后端分离项目中后端的部署

目录 一. jdk&#xff0c;tomcat的安装 1.将要安装的软件压缩包放入到centos服务器上 2. 解压对应的安装包 3. jdk环境变量配置 4. tomcat启动 5. 关闭防火墙 二. MySQL安装 1. 卸载mariadb&#xff0c;否则安装MySql会出现冲突(先查看后删除再查看) 2. 将MySQL安装包解…

【新品】数字化电子智能标签!支持定制服务!!

6年专业研发生产工厂 【NFC防水款】 2.9寸无源NFC电子墨水屏 采用新型无源NFC技术 无须内置电池耗电&#xff0c;没有续航烦恼 新型无源NFC无线刷图技术 采用无源NFC方案&#xff0c;无须内置电池 没有繁琐接线&#xff0c;工作稳定 【电子日历款】 7.5寸单面日历电子墨水屏…

注意力机制 - Transformer

文章目录 1. 简介2. 多头注意力3. 有掩码的多头注意力4. 基于位置的前馈网络5. 层归一化6. 信息传递7. 预测 1. 简介 基于编码器-解码器架构来处理序列对跟使用注意力的seq2seq不同&#xff0c;Transformer是纯基于注意力 2. 多头注意力 对同一key&#xff0c;value&#xff…

竞赛 深度学习手势检测与识别算法 - opencv python

文章目录 0 前言1 实现效果2 技术原理2.1 手部检测2.1.1 基于肤色空间的手势检测方法2.1.2 基于运动的手势检测方法2.1.3 基于边缘的手势检测方法2.1.4 基于模板的手势检测方法2.1.5 基于机器学习的手势检测方法 3 手部识别3.1 SSD网络3.2 数据集3.3 最终改进的网络结构 4 最后…

合肥中科深谷嵌入式项目实战——人工智能与机械臂(五)

订阅&#xff1a;新手可以订阅我的其他专栏。免费阶段订阅量1000 python项目实战 Python编程基础教程系列&#xff08;零基础小白搬砖逆袭) 作者&#xff1a;爱吃饼干的小白鼠。Python领域优质创作者&#xff0c;2022年度博客新星top100入围&#xff0c;荣获多家平台专家称号。…

阿里云2核2G3M带宽轻量服务器87元一年,经济型e实例99元一年

2023阿里云双十一优惠活动2核2G3M轻量应用服务器一年优惠价87元&#xff0c;云服务器ECS经济型e实例优惠价格99元一年&#xff0c;也是2核2G配置&#xff0c;自带3M带宽&#xff0c;并且续费不涨价&#xff0c;阿里云百科aliyunbaike.com还是很建议大家选择e实例的&#xff0c;…

Java日志组件介绍之一

一、前言 前段时间爆出Log4j安全漏洞的事情&#xff0c;XX云因未及时报告漏洞被工信部暂停网络安全威胁和漏洞信息共享平台合作单位&#xff08;https://www.cstis.cn/&#xff09;&#xff0c;话说Java的日志组件真是多而且也比较乱&#xff0c;后续几篇文章就聊一下各日志组…

大客户销售怎么做?CRM系统来帮您

大客户对企业的重要程度不言而喻&#xff0c;企业该如何更好地维护大客户&#xff1f;想要做好大客户销售&#xff0c;可以借助CRM销售管理系统&#xff0c;实现销售流程的数字化管理&#xff0c;深入挖掘了解客户&#xff0c;从而创造更多的收益。那么CRM系统对大客户销售有什…

Oracle数据库创建Sequence序列的基本使用

1.作用就是批量插入数据的时候可以给一个主键 sequence dose not exist_sequence not exist_拒—绝的博客-CSDN博客 Oracle创建Sequence序列_TheEzreal的博客-CSDN博客 Oracle序列&#xff08;sequence&#xff09;创建失败&#xff0c;无法取值&#xff08;.nextval&#x…

LeetCode:2003. 每棵子树内缺失的最小基因值(C++)

目录 2003. 每棵子树内缺失的最小基因值 题目描述&#xff1a; 实现代码与解析&#xff1a; dfs 启发式合并 原理思路&#xff1a; 2003. 每棵子树内缺失的最小基因值 题目描述&#xff1a; 有一棵根节点为 0 的 家族树 &#xff0c;总共包含 n 个节点&#xff0c;节点编…

局域网内远程控制电脑的软件

局域网内远程控制电脑的软件在日常办公中&#xff0c;非常常见了。它可以帮助用户在局域网内远程控制其他电脑&#xff0c;实现文件传输、桌面展示、软键盘输入等功能。 局域网内远程控制电脑的软件有很多种&#xff0c;其中比较实用的有域之盾软件、安企神软件、网管家软件等等…

[论文笔记]BGE

引言 今天介绍论文BGE,是智源开源的语义向量模型,BAAI General Embedding。 作者发布了C-Pack,一套显著推进中文嵌入领域的资源包。包括三个重要资源: 1) C-MTEB是一个全面的中文文本嵌入基准,涵盖了6个任务和35个数据集。 2) C-MTP是一个从标记和未标记的中文语料库中选…

RabbitMQ 运维 扩展

1、集群管理与配置 1.1、集群搭建 关于Rabbitmq 集群的搭建&#xff0c;详见以下文章。简单说来就是将多个单机rabbitmq服务&#xff0c;通过给到一致的密钥&#xff08;.erlang.cookie&#xff09;并且开放rabbitmq服务的 25672 端口&#xff0c;允许多节点间进行互相通讯&am…

leetCode 137. 只出现一次的数字 II + 位运算 + 模3加法器 + 真值表(数字电路) + 有限状态机

给你一个整数数组 nums &#xff0c;除某个元素仅出现 一次 外&#xff0c;其余每个元素都恰出现 三次 。请你找出并返回那个只出现了一次的元素。你必须设计并实现线性时间复杂度的算法且使用常数级空间来解决此问题。 常规解法&#xff1a;哈希&#xff08;hash&#xff09; …

运行项目报错error in ./node_modules/marked/lib/marked.umd.js

今天跑项目时发现一个报错&#xff0c;问题出在marked这个包&#xff0c;然后翻看package.json里面也没有这个包&#xff0c;全局搜索项目也没有这个包相关的信息&#xff0c;可它就是报错&#xff0c;索性直接把它给卸载发现还是报错 报错原因&#xff1a;包的版本太高 解决…