leetcode_111. 二叉树的最小深度 python
目录
一、题目内容
二、解题思路
三、代码
一、题目内容
给定一个二叉树,找出其最小深度。
最小深度是从根节点到最近叶子节点的最短路径上的节点数量。
说明: 叶子节点是指没有子节点的节点。
示例:
给定二叉树 [3,9,20,null,null,15,7],
3
/ \
9 20
/ \
15 7
返回它的最小深度 2.
二、解题思路
1.由于是最小深度,因此需要递归地比较左右子树的深度大小,取小者。
2.若没有子树则深度加0,若只有左子树或右子树或二者都有则深度加“1和子树的深度二者之和”。
三、代码
# Definition for a binary tree node.
# class TreeNode(object):
# def __init__(self, x):
# self.val = x
# self.left = None
# self.right = Noneclass Solution(object):def minDepth(self, root):""":type root: TreeNode:rtype: int"""def iter_depth(root):if root is None:return 0if root.left is None and root.right is not None:return 1 + iter_depth(root.right)if root.left is not None and root.right is None:return 1 + iter_depth(root.left)return 1 + min(iter_depth(root.left), iter_depth(root.right))return iter_depth(root)
leetcode_111. 二叉树的最小深度 python相关推荐
- 二叉树的最小深度Python解法
给定一个二叉树,找出其最小深度. 最小深度是从根节点到最近叶子节点的最短路径上的节点数量. 说明:叶子节点是指没有子节点的节点. 例: 输入:root = [3,9,20,null,null,15,7 ...
- LeetCode_111.二叉树的最小深度
题解C /*** Definition for a binary tree node.* struct TreeNode {* int val;* struct TreeNode *left;* st ...
- python创建树结构、求深度_Python实现二叉树的最小深度的两种方法
找到给定二叉树的最小深度 最小深度是从根节点到最近叶子节点的最短路径上的节点数量 注意:叶子节点没有子树 Example: Given binary tree [3,9,20,null,null,15 ...
- 【每日一算法】二叉树的最小深度
每日一算法-二叉树的最小深度 题目 给定一个二叉树,找出其最小深度. 最小深度是从根节点到最近叶子节点的最短路径上的节点数量. 说明: 叶子节点是指没有子节点的节点. 示例: 给定二叉树 [3,9,2 ...
- 二叉树-二叉树的最小深度(递归法)
题意: 给定一个二叉树,找出其最小深度. 最小深度是从根节点到最近叶子节点的最短路径上的节点数量. 思路: 这里使用递归的方法,找二叉树的最小深度 1.先判断根节点是否为空,是返回0: 2.调用函数遍 ...
- 《剑指offer》求二叉树的最小深度(非递归法)
题目:求二叉树的最小深度(实际上该题来自leetcode) 解析:递归法简单些,下面演示下非递归.无外乎层次遍历二叉树了,思想是用current记录当前层的节点数,next记录下一层的节点数,用队列保 ...
- c#二叉树 取叶子节点个数_二叉树的最小深度+完全二叉树的节点个数
二叉树的最小深度 题目:给定一个二叉树,找出其最小深度. 最小深度是从根节点到最近叶子节点的最短路径上的节点数量. 说明:叶子节点是指没有子节点的节点. 示例 1: 输入:root = [3,9,20 ...
- 数据结构——二叉树的最小深度算法
给定一个二叉树,找出其最小深度. 最小深度是从根节点到最近叶子节点的最短路径上的节点数量. 说明:叶子节点是指没有子节点的节点. 输入:root = [3,9,20,null,null,15,7] 输 ...
- 111. 二叉树的最小深度 golang
111. 二叉树的最小深度 给定一个二叉树,找出其最小深度. 最小深度是从根节点到最近叶子节点的最短路径上的节点数量. 说明: 叶子节点是指没有子节点的节点. 示例: 给定二叉树 [3,9,20,nu ...
最新文章
- Java集合:ConcurrentHashMap(JDK 1.7 JDK 1.8)
- 有关于java的final修饰符
- esp8266 php 接口,ESP8266_SDK基础(5)智能插座_完整项目代码
- 有趣,机器人吵架视频!
- 面试官:实现一个带值变更通知能力的Dictionary
- 他让全世界凶手睡不着觉,现实版福尔摩斯,退休了4次又被拽回来工作,无敌实在是太寂寞了~...
- P6348 [PA2011]Journeys 线段树优化建图 区间连区间
- 【转】C#中StreamWriter与BinaryWriter的区别兼谈编码。
- 上拉加载 php,jquery上拉加载代码及原理
- 袁玉玮:简介人工智能在基金界的应用现状(四)
- 基于POC的不可能三角解决方案:深度解析存储公链Subspace Network
- U盘中毒变成exe快捷键文件不见问题
- 汇编语言里 eax ebx ecx edx esi edi ebp esp这些都是什么意思啊
- 树莓派——摄像头配置与操作
- JavaScript:一个非常有趣的猜数小游戏
- 斐讯路由器设置linux,斐讯N1盒子如何做主路由器的详细教程
- 《会计学》的会计分录使用逻辑(2020年12月写)
- 车用总线 | CAN XL最新技术的CiA官方解答
- 镇江教育局外语计算机培训中心,江苏计算机等级考试报名地点
- NFT细分赛道分类及代表项目汇总
热门文章
- 【samba】Wodows同步Linux文件|搭建共享文件服务器——在windows上映射网络驱动器
- java 怎么保证余额_高并发下怎么做余额扣减?
- springboot——集成elasticsearch进行搜索并高亮关键词
- 【ACWing】1020. 潜水员
- TOM企业邮箱教您如何提升邮箱密码安全
- set并集和交集宏定义typedef
- PDCA循环管理法 抓住质量管理活动的规律(转载)
- 游戏开发、游戏发行与游戏代理之间是一种怎样的关系?
- 位、比特(bit)、字(word)、字节(byte)、B、KB、MB和GB的释义
- 爱情存在吗?白头偕老的爱情存在吗?