news 2026/7/28 20:18:50

Leetcode 111.二叉树的最小深度

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Leetcode 111.二叉树的最小深度

Time: 20190901
Type: Easy

题目描述

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

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

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

示例:

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

3/\920/\157

返回它的最小深度 2.

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/minimum-depth-of-binary-tree
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

思路

递归求解。

代码

# Definition for a binary tree node.# class TreeNode:# def __init__(self, x):# self.val = x# self.left = None# self.right = NoneclassSolution:defminDepth(self,root:TreeNode)->int:ifnotroot:return0left=self.minDepth(root.left)right=self.minDepth(root.right)return1+min(left,right)if(leftandright)else(1+left+right)

站在当前结点思考,左右子树均存在时,取最低高度的子树加上1得到当前高度,若左子树或右子树为空,则只能计算非空子树的高度加上1,可以举个例子辅助理解。

END.

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/28 20:18:46

技术人重启指南:从认知断层到工具链重建

1. 项目概述三年前按下暂停键时,我没想到重启编程需要如此漫长的热身。作为曾在某大厂带过技术团队的老兵,离职时GitHub上还有十几个活跃的开源项目。如今重新打开IDE,连最基本的依赖管理工具都换了三茬。这篇博客记录的正是一个技术人从&quo…

作者头像 李华
网站建设 2026/7/28 20:15:32

Java后端集成MixPush:统一推送服务SDK实战与生产环境最佳实践

1. 项目概述:为什么我们需要一个统一的推送服务端在移动互联网和物联网应用里,消息推送是连接用户与服务的核心生命线。想象一下,你开发的电商App,用户下单后需要实时收到订单状态变更;你的智能家居应用,需…

作者头像 李华
网站建设 2026/7/28 20:12:37

学习笔记之(IO流对象)IO中的异常处理

import java.io.FileOutputStream; import java.io.IOException;/** IO流的异常处理(IO流会出现很多异常,要注意)* try catch finally* * 细节:* 1. 保证流对象变量,作用域足够* 2. catch里面,怎么处理异常* 输出异常的信息,目的看到哪里出现了问题* …

作者头像 李华
网站建设 2026/7/28 20:04:26

Python操作MySQL数据库进阶指南:连接池与事务管理

1. Python操作MySQL数据库全景指南作为数据驱动应用的核心组件,数据库操作一直是Python开发者必须掌握的硬技能。MySQL作为最流行的开源关系型数据库,与Python的配合堪称黄金组合。但很多开发者停留在基础CRUD阶段,对连接池、事务管理等进阶用…

作者头像 李华
网站建设 2026/7/28 20:04:02

AI内容检测与降AI率技术实战指南

1. 项目背景:当AI检测成为内容创作新门槛最近两年,随着AI生成内容的爆发式增长,各类AI检测工具如Turnitin、GPTZero等迅速普及。根据我接到的客户反馈,目前超过60%的学术期刊、出版社和内容平台都已部署AI检测系统。就在上周&…

作者头像 李华