大小为 1 的二叉树的最大深度
Max Depth of binary tree with size one
我正在尝试找到二叉树的最大深度并使用递归方法。它看起来像这样:
public int depth(TreeNode root) {
if(root==null) return 0;
int leftVal=maxDepth(root.left);
int rightVal=maxDepth(root.right);
return 1 + Math.max(leftVal,rightVal);
}
现在,如果只有一个节点(根),它将 return 1。但是,由于该节点是根,所以该节点的深度不为 0 且高度为 1 吗?或者树的最大深度是否与单个节点不同?
深度不是树的度量,而是树的节点的度量。
在你的例子中,一个节点的 maxDepth 听起来像是那个节点的高度。
- 节点的深度是从根到节点的边数。
- 节点的高度是从该节点到最深叶子节点的边数。
- 一棵树的高度就是根的高度。
考虑这张图片:
我正在尝试找到二叉树的最大深度并使用递归方法。它看起来像这样:
public int depth(TreeNode root) {
if(root==null) return 0;
int leftVal=maxDepth(root.left);
int rightVal=maxDepth(root.right);
return 1 + Math.max(leftVal,rightVal);
}
现在,如果只有一个节点(根),它将 return 1。但是,由于该节点是根,所以该节点的深度不为 0 且高度为 1 吗?或者树的最大深度是否与单个节点不同?
深度不是树的度量,而是树的节点的度量。
在你的例子中,一个节点的 maxDepth 听起来像是那个节点的高度。
- 节点的深度是从根到节点的边数。
- 节点的高度是从该节点到最深叶子节点的边数。
- 一棵树的高度就是根的高度。
考虑这张图片: