完全⼆叉树标准(详细图解)
二叉树定义标准
完全⼆叉树是效率很⾼的数据结构。众所周知,完全⼆叉树是由满⼆叉树⽽引出来的。对于深度为K的,有n个结点的⼆叉树,当且仅当其每⼀个结点都与深度为K的满⼆叉树中编号从1⾄n的结点⼀⼀对应时称之为完全⼆叉树。
特点:
(1)所有的叶结点都出现在第k层或k-l层(层次最⼤的两层)
(2)对任⼀结点,如果其右⼦树的最⼤层次为L,则其左⼦树的最⼤层次为L或L+l。
我想这个概念⼤部分⼈都能理解或者早已通彻,但是完全⼆叉树分分为国际标准以及国内标准两部分。
⾸先,国内的完全⼆叉树的定义:
1.叶⼦节点都在最后⼀层或者倒数第⼆层
2.叶⼦节点都向左聚拢
图解:
像这两种图,国内的标准是可以的,只要叶⼦节点有⼀个的时候就要靠左就完全OK了。
但是,举个例⼦来说:
这种情况就不符合第⼀个,B属于叶⼦节点,但是已经在倒数第三层。所以就不是完全⼆叉树。
或者:
这个时候,很明显B属于节点,c是叶⼦节点,但是在右边,不是向左聚拢,所以不属于完全⼆叉树的概念。既然说了国内的,那么国际上的完全⼆叉树⼜是怎样的了?
国际完全⼆叉树的定义:
1.叶⼦节点都在最后⼀层或者倒数第⼆层
2.如果有叶⼦节点,就必然有两个叶⼦节点
图解:
这种情况在是符合完全⼆叉树的标准了,那么有⼈就有疑问了,国际⼆叉树的标准是否适⽤于国内标准,⽏庸置疑,当然是可以,只不过国内的完全⼆叉树如果有叶⼦节点,也可以只是⼀个叶⼦节点向左聚拢(国内标准),⽽另⼀个是两个叶⼦节点(国际标准)。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论