《leetCode-go》二叉树的最小深度

【经典算法】LeetCode 111 二叉树的最小深度(Java/C/Python3/Go实现含注释说明,Easy) 以下是使用深度优先搜索(DFS)和广度优先搜索(BFS)两种方式实现二叉树最小深度计算的总结表格。请注意,这里我们只对比DFS和BFS两种算法在解决二叉树最小深度问题时的特点,不涉及具体语言实现。方式优点缺点时间复杂度空间复杂度其他DFS代码相对简洁可能会遍历不必要的节点O(n)O(h),h为树的高度适用于树不平衡的情况BFS直观且易于理解需要使用队列,可能增加代码复杂度O(n)O(n)适用于树平衡或接近平衡的情况DFS优点。 阅读详情

求给定二叉树的最小深度。最小深度是指树的根结点到最近叶子结点的最短路径上结点的数量。

Given a binary tree, find its minimum depth.The minimum depth is the number of nodes along the shortest path from the root node down to the nearest leaf node.

注意!这个求得是给定二叉树的最小深度。最小深度是指树的根结点到最近叶子结点的最短路径上结点的数量。

一定要到叶子节点!!!所以当某一边没有节点的时候,需要舍弃

package main

type TreeNode struct {
	Val   int
	Left  *TreeNode
	Right *TreeNode
}

func run(root *TreeNode) int {
	// write code here
	if root == nil {
		return 0
	}
	leftDepth := run(root.Left) + 1
	rightDepth := run(root.Right) + 1
	if root.Left != nil && root.Right != nil {
		if leftDepth > rightDepth {
			return rightDepth
		}
		return leftDepth
	} else {
		if leftDepth > rightDepth {
			return leftDepth
		}
		return rightDepth
	}
}

 

LeetCode 0111.二叉树的最小深度【Go】 二叉树的最小深度 LeetCode111. 二叉树的最小深度 题目描述 给定一个二叉树,找出其最小深度。 最小深度是从根节点到最近叶子节点的最短路径上的节点数量。 说明:叶子节点是指没有子节点的节点。 思路 本题使用层序遍历的方式来解决,只有当左右孩子都为空的时候,才说明找到了最小深度。如果其中一个孩子为空则不是最小深度。 代码 Go type TreeNode struct { Val int Left *TreeNode Right *TreeNode } func minDepth(r 阅读详情

相关推荐

ros2 humble中使用realsense t265与d435

前提,安装realsense SDK 2.51.1版本并且能成功启动realsense-viewer V2.51.1想要在ros2中使用realsense t265,必须配合realsense SDK v2.51.1使用realsense-ros 4.51.1版本,因为新版本realsense ros2不再对t265支持下面记录源码编译安装 realsense-ros 4.51.1版本。

m0_72797388的博客 953

LeetCode 111. 二叉树的最小深度Golang版

LeetCode 111. 二叉树的最小深度Golang版 1. 问题描述 给定一个二叉树,找出其最小深度。 最小深度是从根节点到最近叶子节点的最短路径上的节点数量。 说明:叶子节点是指没有子节点的节点。 2. 思路 2.1. 递归 确定递归函数的参数和返回值 func minDepth(root *TreeNode) int 确定终止条件 if root == nil { return 0 } 确定单层循环逻辑 leftDepth := minDepth(root.Left)

菜到不敢run 416

[事件相机1]2024CVPR:Event Stream-based Visual Object Tracking: A High-Resolution Benchmark Dataset

作者:Xiao Wang, Shiao Wang, Chuanming Tang, Lin Zhu, Bo Jiang, Yonghong Tian, Jin Tang代码:https://github.com/Event-AHU/EventVOT_Benchmark。

m0_37412775的博客 1706

111. 二叉树的最小深度 golang

111. 二叉树的最小深度 给定一个二叉树,找出其最小深度。 最小深度是从根节点到最近叶子节点的最短路径上的节点数量。 说明: 叶子节点是指没有子节点的节点。 示例: 给定二叉树 [3,9,20,null,null,15,7], · 3 / 9 20 / 15 7 返回它的最小深度 2. Code /** * Definition for a binary tree node. ...

csdn_kou的博客 367

Cisco 路由器 打环测试教程

环 回测试是很常用的一种测试,通常用于检查和分析端口或线路问题。如下图所示,我们在设备端口上用命令loopback(某些端口上命令格式为 loopback diagnostic)使接口从内部将自己发送的信号转接到自己的接收端(如红线所示),通过检查数据发送和接收的情况来判断端口工作状态是否正常。如果 需要对端口进行完全的检测,可以使用符合标准的短跳线将端口收发短接构成环...

weixin_34304013的博客 2024

QGis二次开发 —— 5.2、基于qgis搭建离线地图服务并开发雷达扫描、无人机飞行跟踪等(附:源码及工程)

QGis二次开发 —— 5.2、基于qgis搭建离线地图服务并开发雷达扫描、无人机飞行跟踪等(附:源码及工程)

223

二叉树的深度_Golang面试题:二叉树的最大深度

问题:求二叉树的最大深度给定一个二叉树,返回其最大深度。示例: 1 / 2 3 / / 4 5 6 7返回最大深度为3解题思路利用深度优先或者广度优先遍历二叉树,找到树的最大深度。二叉树的结构体type TreeNode struct { left *TreeNode // 左子节点 right *TreeNode // 右子节点 value int // 值}深度优先搜索主要思...

weixin_39972567的博客 239

【AI大模型应用开发】教你用AI轻松将你的知识库变为知识图谱(附完整代码,直接运行)

本文我们来介绍如何使用AI,将自己的知识库自动转换为知识图谱,并进行可视化展示。

同学小张的博客 3927

刷题--程序员面试金典--面试题 04.02. 最小高度树(go)

面试题 04.02. 最小高度树 给定一个有序整数数组,元素各不相同且按升序排列,编写一个算法,创建一棵高度最小的二叉搜索树。 示例: 给定有序数组: [-10,-3,0,5,9], 一个可能的答案是:[0,-3,9,-10,null,5],它可以表示下面这个高度平衡二叉搜索树: 0 / \ -3 9 / / -10 5 来源:力扣(LeetCode) 链接:https://leetcode-cn.co...

Allen_Xu17 455

YOLOv11旋转目标检测详解:从原理到实战的全面指南

本文介绍了YOLOv11旋转目标检测技术的核心概念、架构设计与应用场景。传统目标检测使用水平边界框(AABB)存在背景噪声大、定位精度低等问题,而旋转边界框(OBB)通过引入角度参数显著提升了检测精度,在遥感、OCR、工业质检等领域具有独特优势。YOLOv11-OBB采用改进的多尺度检测层、CSPDarknet53骨干网络和双通道角度输出机制,在保持实时性的同时实现精确的旋转目标检测。实验表明,该方法在DOTA数据集上达到81.3%的mAP,相比传统方法提升显著,特别适合处理具有旋转特性或高宽比悬殊的目标。

本博客聚焦 YOLOv11 全流程落地,涵盖架构优化、数据集处理、训练技巧与多场景部署,兼及国产数据库、Java 开发与 AI 模型应用,内容兼顾理论与工程实践,为开发者提供系统干货,助力高效提升技术能力。 301

OpenClaw用户必看:每天0成本使用OpenClaw!NVIDIA NIM免费大模型接入教程

🚀 OpenClaw接入NVIDIA NIM免费API!glm5、minimax-m2.5等大量模型任选,0成本升级AI助手!💰

XiaoqiangClub的博客 5579

力扣第111题Golang答案 二叉树的最小深度

方法1:广度优先遍历 // 方法1:使用广度优先遍历 func minDepth(root *TreeNode) int { // 如果传进来的节点是空,返回0 if root == nil { return 0 } // 创建一个队列,存放节点和层数 [[node, int]] type floor struct { Node *TreeNode Floor int } var queue []floor queue = append(queue, floor{ N

未来已来,AI时代,学AI编程,做AI量化,就来大鹏AI教育。 339

AI上推荐 之 协同过滤

㐇

Miracle8070 1万+

111. 二叉树的最小深度、Leetcode的Go实现

博客主页:🏆看看是李XX还是李歘歘🏆 🌺每天分享一些包括但不限于计算机基础、算法等相关的知识点🌺 💗点关注不迷路,总有一些📖知识点📖是你想要的💗 ⛽️今天的内容是Leetcode104. 二叉树的最大深度⛽️💻💻💻 111. 二叉树的最小深度 给定一个二叉树,找出其最小深度。 最小深度是从根节点到最近叶子节点的最短路径上的节点数量。 说明:叶子节点是指没有子节点的节点。 示例 1: 输入:root = [3,9,20,null,null,15,7] 输出:2 示例...

分享包括但不限于计算机基础知识、数据结构与算法、Golang技术栈。年与时驰,意与日去,遂成枯落,多不接世,悲守穷庐,将复何及! 379

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

Golang | Leetcode Golang题解之第111题二叉树的最小深度

Golang | Leetcode Golang题解之第111题二叉树的最小深度

weixin_66442839的博客 513

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

LeetCode系列:111. 二叉树的最小深度(golang版)

题目描述 给定一个二叉树,找出其最小深度。 最小深度是从根节点到最近叶子节点的最短路径上的节点数量。 说明:叶子节点是指没有子节点的节点。 示例 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 来源:力扣(LeetCode) 链接:htt.

admin_o1的博客 194

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

刷题---树篇---111. 二叉树的最小深度(go)

111. 二叉树的最小深度 给定一个二叉树,找出其最小深度。 最小深度是从根节点到最近叶子节点的最短路径上的节点数量。 说明:叶子节点是指没有子节点的节点。 示例: 给定二叉树[3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7 返回它的最小深度 2. 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/minimum-depth-of-binary-tree ...

Allen_Xu17 363

leetcode | go | 第111题 | 二叉树的最小深度

【代码】leetcode | go | 第111题 | 二叉树的最小深度。

iCling的博客 87

(20)Go递归求二叉树的最大深度和最小深度

求最大深度简单,主要是最小深度有个小陷进要注意 最大深度实现 func maxDepth(root *TreeNode) int { // 递归终止条件 if root == nil { return 0 } // 递归过程 leftMaxDepth := maxDepth(root.Left) rightMaxDepth := maxDepth(root.Right) /...

哥斯拉啊啊啊哦的博客 603

[Go版]算法通关村第八关白银——轻松搞定二叉树的深度和高度问题

求二叉树的最大深度和最小深度、N叉树的最大深度、判断平衡二叉树

trinityleo5的博客 760

数据结构与算法之二叉树: LeetCode 111. 二叉树的最小深度 (Ts, Py, Go版)

最小深度是从根节点到最近叶子节点的最短路径上的节点数量。就 给定一个二叉树,找出其最小深度。说明:叶子节点是指没有子节点的节点。

Wang的专栏 699

算法训练Day 16

LeetCode 关于二叉树深度和完全二叉树定义的三道算法题,递归还是很契合二叉树这一数据结构的啊

周一心情拯救者 189

算法篇:树之树的高度

算法:这一类题目很简单,不过却是树的最基本操作之一,引申为判断树是不是平衡二叉树。一般做法是,计算二叉树的左右子树的高度+1,然后取它们的最大值或者最小值。题目1:https://lee...

zhghost的专栏 2843

111. 二叉树的最小深度【二叉树】

说明:叶子节点是指没有子节点的节点。给定一个二叉树,找出其最小深度。的最短路径上的节点数量。最小深度是从根节点到。

YouMing_Li的博客 500

LeetCode算法题(Go语言实现)_33

分治思想:将复杂问题分解为可重复解决的子问题空间优化:递归法空间复杂度仅与树高相关遍历统一:层序遍历框架可扩展用于求平均值、右视图等问题。

LuckyLay的博客 563

leetcode二叉树必刷题(2)——N 叉树的层序遍历、在每个树行中找最大值、填充每个节点的下一个右侧节点指针、填充每个节点的下一个右侧节点指针II、二叉树的最大深度、二叉树的最小深度

填充它的每个 next 指针,让这个指针指向其下一个右侧节点。如果找不到下一个右侧节点,则将 next 指针设置为。填充它的每个 next 指针,让这个指针指向其下一个右侧节点。如果找不到下一个右侧节点,则将 next 指针设置为。树的序列化输入是用层序遍历,每组子节点都由 null 值分隔(参见示例)。,其所有叶子节点都在同一层,每个父节点都有两个子节点。最小深度是从根节点到最近叶子节点的最短路径上的节点数量。是指从根节点到最远叶子节点的最长路径上的节点数。**说明:**叶子节点是指没有子节点的节点。

m0_63230155的博客 230
上一篇: golang的排序
下一篇: 《leetcode-go》逆波兰式计算
less_cold
博客等级 码龄10年 40粉丝 364原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值