据我理解,完全二叉树中最后一层可以有不完整的节点。那么什么是满二叉树?它们有何区别?
据我理解,完全二叉树中最后一层可以有不完整的节点。那么什么是满二叉树?它们有何区别?
完全二叉树(有时称为真二叉树或2-树)是一棵树,其中除了叶子节点以外的每个节点都有两个子节点。
完整二叉树是一棵二叉树,在该树中,除了可能是最后一层之外的每一层都是完全填充的,并且所有节点都尽可能靠左。
这些描述的来源和参考图片如下: http://web.cecs.pdx.edu/~sheard/course/Cs163/Doc/FullvsComplete.html
完美二叉树: 1. 所有内部节点必须有两个子节点。 2. 所有叶子节点在同一层级上。
Example :
A1
B1 B2
C1 C2 C3 C4
完全二叉树: 除了最后一层,所有层都是完全填充的
示例:
A1
B1 B2
C1 C2 C3 C4
D1 D2 D3
满二叉树: 每个节点都有0或2个子节点。
例子:
A1
B1 B2
C1 C2 C3 C4
D1 D2