面试算法-73-二叉树的最小深度

题目

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

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

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

示例 1:

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

输出:2

java 复制代码
class Solution {
    public int minDepth(TreeNode root) {
        if(root == null){
            return 0;
        }

        if(root.left == null && root.right == null){
            return 1;
        }

        if(root.left == null){
            return minDepth(root.right) +1;
        }

        if(root.right == null){
            return minDepth(root.left) +1;
        }
        
        return Math.min(minDepth(root.left),minDepth(root.right)) + 1;
    }
}
相关推荐
断剑zou天涯2 分钟前
【算法笔记】有序表——SB树
笔记·算法
曾几何时`4 分钟前
滑动窗口(十五)2962. 统计最大元素出现至少 K 次的子数组(越长越合法型)
数据结构·算法
究极无敌暴龙战神X10 分钟前
机器学习相关
人工智能·算法·机器学习
断剑zou天涯20 分钟前
【算法笔记】有序表——跳表
笔记·算法
挖矿大亨24 分钟前
c++中的函数调用运算符重载
前端·c++·算法
wadesir26 分钟前
Rust语言BM算法实现(从零开始掌握Boyer-Moore字符串搜索算法)
算法·rust·.net
硅农深芯27 分钟前
深入解析 AECQ100 标准中的 Cpk:保障汽车电子元器件质量的关键指标
人工智能·算法·汽车·芯片·cpk
AI 菌28 分钟前
Qwen-Image:复杂文本渲染与精准图像编辑的图像生成基础模型
人工智能·算法·计算机视觉·大模型·千问
Cx330❀29 分钟前
《C++ 递归、搜索与回溯》第1题:汉诺塔问题
开发语言·c++·算法·面试·回归算法
爱学习的uu36 分钟前
大模型学习1——各类模型接入langchain,模型调用,记忆管理,工具调用
人工智能·python·深度学习·学习·算法·机器学习·langchain