面试算法-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;
    }
}
相关推荐
xiaoye-duck1 分钟前
《算法题讲解指南:优选算法-分治-快排》--45.数组中的第k个最大元素,46.最小的k个数
c++·算法
Galerkin码农选手7 分钟前
per_tenor_quant_fp8和per_token_quant_fp8算法解读
人工智能·pytorch·算法
tankeven7 分钟前
HJ125 最大最小路
c++·算法
MegaDataFlowers8 分钟前
认识复杂度和简单排序算法
java·算法·排序算法
MSTcheng.9 分钟前
【算法】前缀和:『560. 和为 K 的子数组 & 1314.矩阵区域和』
线性代数·算法·矩阵
luckycoding13 分钟前
739. 每日温度
算法·leetcode·职场和发展
一只黑鸟14 分钟前
基于STM32的罐装水泥成分实时检测系统设计与实现(含有matlab仿真)
stm32·嵌入式硬件·算法·matlab·毕设
@我漫长的孤独流浪35 分钟前
C算法设计与分析------程序设计代码
数据结构·c++·算法
Filotimo_40 分钟前
3.5 排序算法
数据结构·算法·排序算法
一个努力编程人40 分钟前
机器学习————GBDT算法
人工智能·算法·机器学习