首页 > 其他分享 >12_二叉树的最小深度

12_二叉树的最小深度

时间:2023-11-27 11:12:43浏览次数:29  
标签:12 null 最小 queue 二叉树 poll root 节点

二叉树的最小深度

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

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

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

示例 1:

img

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

示例 2:

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

【思路】当遍历后得到的节点的左、右孩子结点都为空的时候,则说明遍历的最低点了。直接返回当前的的deepth,如果其中一个孩子为空则不是最低点。

class Solution {
    public int minDepth(TreeNode root) {
        if (root == null)  return 0;
        int depth = 1;
        Queue<TreeNode> queue = new LinkedList<>();
        queue.add(root);
        while (!queue.isEmpty()) {
            int levelSize = queue.size();
            while (levelSize > 0) {
                TreeNode poll = queue.poll();
                levelSize--;
                if (poll.left == null && poll.right == null) {
                    return depth;
                }
                if (poll.left != null) {
                    queue.add(poll.left);
                }
                if (poll.right != null) {
                    queue.add(poll.right);
                }
            }
            depth++;
        }
        return depth;
    }
}

标签:12,null,最小,queue,二叉树,poll,root,节点
From: https://www.cnblogs.com/codingbao/p/17858813.html

相关文章

  • 2023-2024-1 20232309 《网络空间安全导论》第12(3)周学习总结
    2023-2024-120232309《网络空间安全导论》第12(3)周学习总结教材学习内容总结有点草率地看了一下课本,实在是无力细究......相对空泛的内容看书就行,就不写在思维导图里浪费时间了教材学习中的问题和解决过程1.重放攻击为什么可以造成伤害?chat-gpt对重放攻击的防御基于AI......
  • 解决Windows Server 2012加密套件过时的问题
    给自己网站加了SSL证书后,发现在360极速浏览器浏览时,会显示加密套件已经过时。一直以为是.cn域名的问题,后面才发现是IIS上面加密套件过时的问题。 后面我还以为是要切换到TLS1.3,因为我另外一个SVN服务器使用的是TLS1.3,360提示没有过时。后面我看到了博客园的也是TLS1.2的,只是......
  • 这12款可以让你更幸福的软件你一定要装
    每个人都有自己特别喜欢的软件,我也介绍一下我喜欢的12款软件,几乎每次重装系统都必安装。截图:pixpin工作中经常需要截图,所以个人电脑和办公电脑我都安装了。使用快捷键ctrl+1一键截图,能对截图进行编辑,不仅支持保存和复制图片,还支持钉住功能,可以随时查看图片内容。文件搜索:Everyt......
  • PTA-ch7b-5 : 最小工期
    最小工期一个项目由若干个任务组成,任务之间有先后依赖顺序。项目经理需要设置一系列里程碑,在每个里程碑节点处检查任务的完成情况,并启动后续的任务。现给定一个项目中各个任务之间的关系,请你计算出这个项目的最早完工时间。输入格式:首先第一行给出两个正整数:项目里程碑的数量N......
  • 面试必刷TOP101:33、二叉树的镜像
    题目题解publicTreeNodeMirror(TreeNodepRoot){if(pRoot==null){returnnull;}TreeNoderoot=newTreeNode(pRoot.val);root.left=Mirror(pRoot.right);root.right=Mirror(pRoot.left);retur......
  • 文心一言 VS 讯飞星火 VS chatgpt (143)-- 算法导论12.1 3题
    三、用go语言,设计一个执行中序遍历的非递归算法。(提示:一种容易的方法是使用栈作为辅助数据结构;另一种较复杂但比较简洁的做法是不使用栈,但要假设能测试两个指针是否相等。)文心一言,代码正常运行:我们可以使用栈作为辅助数据结构来执行中序遍历的非递归算法。以下是用Go语言实现的代......
  • 2023-2024-1 20232303 《网络空间安全导论》第12周学习总结
    2023-2024-120232303《网络空间安全导论》第12周学习总结教材学习内容总结基于AI的学习参考资料《网络空间安全导论》使用博客园进行学习MarkDown/Mermaid排版教程......
  • 湖人 121-115险胜骑士!詹姆斯距离40000分更进一步
    北京时间‬11月26日,NBA常规赛,湖人121-115险胜骑士,迎来了4连客之旅的开门红。本场比赛湖人湖人只有八名球员轮换出场,七人得分上双。詹姆斯重返克里夫兰,骑士在客队更衣室门口的数字屏幕‬上展现詹姆斯在2016年带领‬骑士夺冠时的照片,井打出“欢迎勒布朗回家”。 詹姆斯此战投篮23......
  • 文心一言 VS 讯飞星火 VS chatgpt (143)-- 算法导论12.1 3题
    三、用go语言,设计一个执行中序遍历的非递归算法。(提示:一种容易的方法是使用栈作为辅助数据结构;另一种较复杂但比较简洁的做法是不使用栈,但要假设能测试两个指针是否相等。)文心一言,代码正常运行:我们可以使用栈作为辅助数据结构来执行中序遍历的非递归算法。以下是用Go语言实现......
  • 2023-2024-1 20231312 《计算机基础与程序设计》第九周学习总结
    作业信息这个作业属于哪个课程<班级的链接>2023-2024-1-计算机基础与程序设计|-这个作业要求在哪里<作业要求链接>2023-2024-1计算机基础与程序设计第6周作业|这个作业的目标《计算机基础概论》第10、11章《C语言程序设计》第8章|作业正文作业链接教材......