第十六天|104.二叉树的最大深度 559.n叉树的最大深度,111.二叉树的最小深度
104_题目关键字:二叉树,递归
104_题目链接:https://leetcode.cn/problems/maximum-depth-of-binary-tree/
代码实现
package LeetCode;
public class YangSibo_104 {
}
class YangSibo_104_1 {
public int maxDepth(TreeNode root) {
if(root == null) return 0;
int left = maxDepth(root.left) + 1;
int right = maxDepth(root.right) + 1;
return (left > right) ? left: right;
}
}
解题注意事项
注意叶子节点本身没有深度
111_题目关键字:二叉树,递归,叶子节点
111_题目链接:https://leetcode.cn/problems/minimum-depth-of-binary-tree/
代码实现:
package LeetCode;
public class YangSibo_111 {
}
class YangSibo_111_1 {
public int minDepth(TreeNode root) {
if(root == null) return 0;
if(root.left == null && root.right == null) return 1 ;
if(root.left == null || root.right == null) return minDepth(root.right) + minDepth(root.left) + 1;
int left = minDepth(root.left) + 1;
int right = minDepth(root.right) + 1;
return (left < right) ? left: right;
}
}
解题注意事项
1、叶子节点是指没有子节点的节点
2、单词递归处理场景复杂时,应当从最异常到最常规的处理流程