一、二叉树的深度与高度
1、二叉树的深度
对于二叉树中的某个节点,其深度是从根节点到该节点的最长简单路径所包含的节点个数,是从上面向下面数的。因此访问某个节点的深度要使用先序遍历
2、二叉树的高度
对于二叉树中的某个节点其高度是从叶子节点到该节点的最长简单路径包含的节点个数,是从下面向上面数的。因此访问某个节点的高度需要使用后续遍历
3、二叉树的深度与高度辨析
每层节点的深度和高度如图所示:
4、二叉树的深度与高度的联系
一个二叉树根节点的高度就是这个二叉树的最大深度
二、二叉树的高度
1、递归法
递归三要素:
- 递归返回值和参数:返回值为当前节点的高度,参数为当前节点
- 递归单层逻辑:当前节点高度 = 1 + max(左子树高度,右子树高度)
- 递归终止条件:当前节点为空,返回高度为0,结束递归
2、递归法代码
class Solution