111二叉树的最小深度
程序员文章站
2022-05-20 19:24:29
...
题目描述
给定一个二叉树,找出其最小深度。
最小深度是从根节点到最近叶子节点的最短路径上的节点数量。
说明: 叶子节点是指没有子节点的节点。
思路分析
二叉树的题,基本都能用递归解答,基础模板就是前中后序遍历。基于此,进行分析,递归终止的条件是什么?一次递归中要进行什么操作?递归想要返回什么信息?
代码实现
public int minDepth(TreeNode root) {
if (root == null) {
return 0;
}
return process(root, 1);
}
public int process(TreeNode root, int depth) {
if (root == null) {
return Integer.MAX_VALUE;
}
if (root.left == null && root.right == null) {
return depth;
}
int left = process(root.left, depth + 1);
int right = process(root.right, depth + 1);
return Math.min(left, right);
}
上一篇: 笑话集原创笑话精品展第七十五期
下一篇: 笑话集原创笑话精品展第八十四期