104.二叉树的最大深度 | 111.二叉树的最小深度
创始人
2024-03-15 10:03:16

文章目录

  • 二叉树的深度
    • 104.二叉树的最大深度
      • 题目
      • 题解
    • 111.二叉树的最小深度
      • 题目
      • 题解

二叉树的深度

104.二叉树的最大深度

题目

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

二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。

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

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

    3/ \9  20/  \15   7

返回它的最大深度 3 。

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

题解

这道题思路很简单,遍历这棵二叉树。
可以选择不同的遍历的方式,这里我选择后序遍历。因为我首先想到的是 根节点的到叶子节点的最大深度=1+Math.max(根的左孩子节点到叶子节点的最大深度,根的右孩子节点到叶子节点的最大深度),从下往上的计算高度。

其实可以从这个等式抽象化出递归函数的作用就是: 当前参数root节点到叶子节点的最大深度

递归函数的参数就是当前节点root,返回值就是当前root到叶子节点的最大深度。当指向的root节点为空就可以返回了,此时root节点到叶子节点的最大深度为零。

var maxDepth = function(root) {if(root==null) return 0;return 1+Math.max(maxDepth(root.left),maxDepth(root.right));
};

111.二叉树的最小深度

题目

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

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

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

示例 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)
链接:https://leetcode.cn/problems/minimum-depth-of-binary-tree
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

题解

由上题的思路很容易想到 根节点的到叶子节点的最小深度=1+max(根的左孩子节点到叶子节点的最小深度,根的右孩子节点到叶子节点的最小深度)
但是如果是一棵只有一边的树那最小深度是0吗?如果只有一边有节点最大深度肯定是取有节点的一边,但是最小深度的话通过测试应该是2。所以直接按我们上面的公式是不行的,上述公式只适合于左右孩子节点都不为空的情况。
在这里插入图片描述
所以我们需要分析一个节点可能存在的情况

  1. 该节点左孩子节点为空,右孩子节点不为空。当前节点的最小深度 = 1+右孩子节点的最小深度
  2. 该节点右孩子节点为空,左孩子不为空。当前节点的最小深度= 1+左孩子节点的最小深度
  3. 该节点左右孩子都不为空。根节点的到叶子节点的最小深度=1+Math.min(根的左孩子节点到叶子节点的最小深度,根的右孩子节点到叶子节点的最小深度)
var minDepth = function(root) {if(root==null)return 0;if(root.left==null) return 1+ minDepth(root.right); //情况2else if(root.right==null) return 1+ minDepth(root.left);   //情况3return 1+Math.min(minDepth(root.right),minDepth(root.left));
};

上一篇:第5 部分 EIGRP

下一篇:Mac终端常用命令

相关内容

热门资讯

应用未安装解决办法 平板应用未... ---IT小技术,每天Get一个小技能!一、前言描述苹果IPad2居然不能安装怎么办?与此IPad不...
长白山自助游攻略 吉林长白山游... 昨天介绍了西坡的景点详细请看链接:一个人的旅行,据说能看到长白山天池全凭运气,您的运气如何?今日介绍...
脚上的穴位图 脚面经络图对应的... 人体穴位作用图解大全更清晰直观的标注了各个人体穴位的作用,包括头部穴位图、胸部穴位图、背部穴位图、胳...
demo什么意思 demo版本... 618快到了,各位的小金库大概也在准备开闸放水了吧。没有小金库的,也该向老婆撒娇卖萌服个软了,一切只...
猫咪吃了塑料袋怎么办 猫咪误食... 你知道吗?塑料袋放久了会长猫哦!要说猫咪对塑料袋的喜爱程度完完全全可以媲美纸箱家里只要一有塑料袋的响...
世界上最漂亮的人 世界上最漂亮... 此前在某网上,选出了全球265万颜值姣好的女性。从这些数量庞大的女性群体中,人们投票选出了心目中最美...
埃菲尔铁塔在哪 中国仿建埃菲尔... 2019年4月26日,广西南宁市,街头惊现一座巨型山寨版埃菲尔铁塔,高约20米,白色塔身,造型逼真,...
北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
应用未安装解决办法 平板应用未... ---IT小技术,每天Get一个小技能!一、前言描述苹果IPad2居然不能安装怎么办?与此IPad不...
demo什么意思 demo版本... 618快到了,各位的小金库大概也在准备开闸放水了吧。没有小金库的,也该向老婆撒娇卖萌服个软了,一切只...
长白山自助游攻略 吉林长白山游... 昨天介绍了西坡的景点详细请看链接:一个人的旅行,据说能看到长白山天池全凭运气,您的运气如何?今日介绍...
脚上的穴位图 脚面经络图对应的... 人体穴位作用图解大全更清晰直观的标注了各个人体穴位的作用,包括头部穴位图、胸部穴位图、背部穴位图、胳...
猫咪吃了塑料袋怎么办 猫咪误食... 你知道吗?塑料袋放久了会长猫哦!要说猫咪对塑料袋的喜爱程度完完全全可以媲美纸箱家里只要一有塑料袋的响...