力扣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。++

}

}

相关推荐
invicinble6 分钟前
关于对后端开发工程师,在项目层面的基本需求与进阶方向
java
懒鸟一枚9 分钟前
Java17新特性详解
java
戌中横11 分钟前
JavaScript 对象
java·开发语言·javascript
crossaspeed12 分钟前
面向对象的三大特征和反射(八股)
java·开发语言
咋吃都不胖lyh12 分钟前
GBDT 中的前向分布算法和贪婪学习
学习·算法
leo__52015 分钟前
CLEAN算法仿真程序,用于雷达信号中的杂波抑制
算法
zfj32121 分钟前
java synchronized关键字用法和底层原理
java·开发语言·轻量级锁·重量级锁·偏向锁·线程同步
梵高的代码色盘24 分钟前
互联网大厂Java求职面试实录与技术深度解析
java·spring·缓存·微服务·面试·互联网大厂·技术深度
一分之二~26 分钟前
二叉树--求最小深度(迭代和递归)
数据结构·c++·算法·leetcode·深度优先
老鼠只爱大米27 分钟前
LeetCode经典算法面试题 #24:两两交换链表中的节点(迭代法、递归法等多种实现方案详细解析)
算法·leetcode·链表·递归·双指针·迭代·链表交换