python二叉树的高度
时间: 2023-10-14 11:13:09 浏览: 146
以下是Python中求二叉树高度的实现方法:
```python
class TreeNode:
def __init__(self, val=0, left=None, right=None):
self.val = val
self.left = left
self.right = right
def maxDepth(root: TreeNode) -> int:
if not root:
return 0
else:
left_height = maxDepth(root.left)
right_height = maxDepth(root.right)
return max(left_height, right_height) + 1
```
其中,`TreeNode` 类表示二叉树节点,`maxDepth` 函数用于求二叉树的高度。函数中,若当前节点为空,则返回 0;否则,递归求解左右子树的高度,并返回左右子树高度的最大值加 1。
例如,对于如下二叉树:
```
3
/ \
9 20
/ \
15 7
```
调用 `maxDepth` 函数求解二叉树高度的代码如下:
```python
root = TreeNode(3)
root.left = TreeNode(9)
root.right = TreeNode(20)
root.right.left = TreeNode(15)
root.right.right = TreeNode(7)
print(maxDepth(root)) # 输出 3
```
输出结果为 3,即二叉树的高度。
阅读全文