面试算法-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;
    }
}
相关推荐
生成论实验室6 分钟前
WOLM认知引擎:为系统赋予“知止”的生命本能——一套确定性、内生安全的通用认知决策内核
人工智能·算法·机器学习·自动驾驶·安全架构
黎阳之光11 分钟前
智慧公安视频孪生平台:构建全域治安防控可视化体系
大数据·人工智能·算法·安全·数字孪生
大鸣王潮202411 分钟前
Flow-GRPO vs Flow-Factory: SD3 GRPO 实现对比
人工智能·算法
平行侠12 分钟前
40希尔排序 - 以递减间距进行插入排序
java·算法·排序算法
林熙蕾LXL13 分钟前
进程处理操作
开发语言·c++·算法
代码无bug抓狂人14 分钟前
用回溯算法解决01背包
数据结构·算法
Shan120515 分钟前
二叉树的遍历算法之中序遍历
算法
晨曦中的暮雨20 分钟前
动态规划专题Day1——打家劫舍系列
算法·动态规划
khalil102021 分钟前
代码随想录算法训练营Day-52 图论03 | 101.孤岛的总面积、102.沉没孤岛、103.水流问题、104.建造最大岛屿
c++·算法·图论
老四啊laosi21 分钟前
[滑动窗口] 13. 水果成篮
算法·leetcode·滑动窗口·水果成篮