一、Leetcode 104.二叉树的最大深度
这题在之前层次遍历刷过。也可以用递归法,每次递归深度加1
int depth = 1 + max(leftdepth, rightdepth); // 中
二、Leetcode 111.二叉树的最小深度
类似于最大深度递归,把1 + max(left, right)改成1 + min(left, right)。但是注意:
最小深度是从根节点到最近叶子节点的最短路径上的节点数量。注意是叶子节点
因此需要针对左孩子空,右孩子有孩子的情况写if判断。
三、 Leetcode 222.完全二叉树的节点个数
注意右移运算符优先级低于加减乘除,要加括号。

理解完全二叉树的定义,利用满二叉树的结点数和公式。
这篇博客详细介绍了如何计算二叉树的最大深度和最小深度,分别采用递归的方法实现。最大深度递归公式为1+max(leftDepth, rightDepth),而最小深度则需要考虑叶子节点的情况。对于完全二叉树的节点数量,通过满二叉树的节点公式进行计算,注意运算符优先级。这些算法是解决LeetCode相关问题的基础。

被折叠的 条评论
为什么被折叠?



