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

}

}

相关推荐
谷粒.3 小时前
Cypress vs Playwright vs Selenium:现代Web自动化测试框架深度评测
java·前端·网络·人工智能·python·selenium·测试工具
Dev7z4 小时前
基于MATLAB数学形态学的边缘检测算法仿真实现
算法·计算机视觉·matlab
uzong6 小时前
程序员从大厂回重庆工作一年
java·后端·面试
kyle~6 小时前
C++---value_type 解决泛型编程中的类型信息获取问题
java·开发语言·c++
开心香辣派小星10 小时前
23种设计模式-15解释器模式
java·设计模式·解释器模式
风筝在晴天搁浅10 小时前
代码随想录 718.最长重复子数组
算法
kyle~11 小时前
算法---回溯算法
算法
Halo_tjn11 小时前
虚拟机相关实验概述
java·开发语言·windows·计算机
star _chen11 小时前
C++实现完美洗牌算法
开发语言·c++·算法
hzxxxxxxx11 小时前
1234567
算法