31 lines
1.2 KiB
Python
31 lines
1.2 KiB
Python
"""
|
||
二叉树常见术语:
|
||
|
||
- 「根节点 root node」:位于二叉树顶层的节点,没有父节点。
|
||
- 「叶节点 leaf node」:没有子节点的节点,其两个指针均指向。
|
||
- 「边 edge」:连接两个节点的线段,即节点引用(指针)。
|
||
- 节点所在的「层 level」:从顶至底递增,根节点所在层为 1 。
|
||
- 节点的「度 degree」:节点的子节点的数量。在二叉树中,度的取值范围是 0、1、2 。
|
||
- 二叉树的「高度 height」:从根节点到最远叶节点所经过的边的数量。
|
||
- 节点的「深度 depth」:从根节点到该节点所经过的边的数量。
|
||
- 节点的「高度 height」:从距离该节点最远的叶节点到该节点所经过的边的数量。
|
||
"""
|
||
|
||
|
||
class TreeNode:
|
||
def __init__(self, val: int):
|
||
self.val = val
|
||
self.left: TreeNode | None = None
|
||
self.right: TreeNode | None = None
|
||
|
||
|
||
"""
|
||
# 完美二叉树:除了叶节点,所有节点都有两个子节点,且左右节点数相同,
|
||
若树的高度为h,则节点数为 2^(h+1)-1。也称为满二叉树
|
||
|
||
# 完全二叉树:只有最底层节点未被填满,且填充顺序从左到右
|
||
|
||
# 完满
|
||
"""
|
||
|