常见树:二叉树、二叉搜索树、2-3树、红黑树
层次 树
1 A
/ | \
2 B C D
/ \ | / | \
3 E F G H I J
/ \ |
4 K L M
树的常见概念:
(1)度
度:结点拥有的子树树称为结点的度(Degree)如:上图A的度为3,C的度为1,F的度为0。
叶子(Leaf)或终端结点:度为0的结点称为叶子(Leaf)或终端结点,如:上图K,L,F,G,M,I,J都是树的叶子
非终端结点或分支结点:度不为0的结点称为非终端结点或分支结点,如:上图A,B,C,D,E,H
树的度是树内各节点的度的最大值,如:上图的树的度为 3 。
(2)结点(家谱图)
结点的子树的根称为该结点的孩子(Child),相应地,该结点称为孩子的双亲(Parent)如:上图D是A的孩子,A是D的双亲。
同一个双亲的孩子叫兄弟(Sibling)如:上图H,I,J为互为兄弟
其双亲在同一层的结点互为堂兄弟。如上图G与E、F、H、I、J互为堂兄弟
结点的祖先是从根到该结点所经分支上的所有结点。如:上图M的祖先为A、D、H
(3)层次,深度(你家几代同堂啊?)
结点的层次(Level)从根开始定义起,根为第一层,根的孩子为第二层,
树中结点的最大层次成为树的深度(Depth)或高度。如:上图树的深度为4
结点的深度:从根节点开始自顶向下逐层累加。例如上图中:B的深度为2。
结点的高度:从该节点向下分支的叶节点开始自底向上逐层累加。 如:K节点的高度为1,G节点高度为3
满二叉树的结点个数N与高度h: N = 2^h - 1