力扣111 9.6

111.二叉树的最小深度

练个手,我写的有点复杂,if语句要考虑到不同情况。不算难嗷,正常递归。

class Solution {

public int minDepth(TreeNode root) {

return dfs(root);

}

int dfs(TreeNode root){ if(root!=null&&root.left==null&&root.right==null){

return 1;

}

if(root==null){

return 0;

}

if(root.left!=null&&root.right!=null)

return Math.min(1+dfs(root.left),1+dfs(root.right));

else if(root.left!=null&&root.right==null)

return 1+dfs(root.left);

else if(root.right!=null&&root.left==null)

return 1+dfs(root.right);

return 0;

++好像是Java语法要求必须要有个return。++

}

}

相关推荐
致Great1 小时前
Pi 的上下文压缩,到底是怎么工作的?
算法
St_rive2 小时前
Page Object设计模式
java·开发语言·设计模式
wuyk5552 小时前
4.树:一对多的层次数据结构
开发语言·数据结构·stm32·单片机
watersink2 小时前
机器学习聚类算法
算法·机器学习·聚类
风流 少年2 小时前
Spring AI 2.0:SSE
java·人工智能·spring
凤山老林2 小时前
精细化流量治理:Spring Boot 动态特性开关与灰度发布体系
java·spring boot·后端
luj_17683 小时前
桥牌思维启示:系统设计的模块化架构
c语言·开发语言·c++·经验分享·算法
饼饼学习空间智能4 小时前
家庭服务机器人训练数据怎么积累?仿真、真实采集与持续学习的技术路线分析
人工智能·算法·机器学习
Aphelios3805 小时前
一次锁内网络IO引发的Tomcat线程池“饿死”事故
java·开发语言·spring boot·elasticsearch·tomcat·网络io阻塞·线程池耗尽