二叉树的计算

二叉树是一种典型的非线性结构,如果在一个数据结构中,每个节点只能有一个父节点但是可以有多个子节点,这样的数据结构我们就把它称为树,如果我们再加一个规定,每个父节点最多只有2个子节点的话,那么这样的树我们就把它称为二叉树。既然刚才说了二叉树一个节点下最多只有2个子节点,那就意味着对于二叉树中的任意一个节点有三种情况,对于这三种情况,我们分别把这个父节点称为度为2的节点、度为1的节点、度为0的节点,也就是说一个父节点它下面有几个子节点那么它的度就是几,对于度为0的子节点来说由于它没有子节点了也把它称为叶子节点。所以学了二叉树就要知道二叉树并不是表示每个节点下面必须开两个叉而是最多开两个叉

 现在学一个新的概念就是二叉树的层数,我们看下面的二叉树,最上面的节点称为根节点,一个二叉树只能有一个根节点,如果把根节点叫第一层的话,下面依次是第二层第三层,我们发现二叉树越往下它所能容纳的节点数就越多,发现每一层所能容纳最多的节点数是上一层的二倍,所以这样一来如果想要计算第n层最多容纳多少个节点,把刚才的规律总结出来就是2^(n-1)个——读2的n-1次幂。现在来算一算假设就有一个层数为6的二叉树它一共有多少个节点,像这样每一层都达到了最大容量的二叉树我们称为满二叉树。

 了解二叉树中节点数和层数的关系之后,再来介绍一个二叉树中一个非常重要的数学关系,就是对于任何一个二叉树来说,它的叶子节点数永远比度为2的节点数多1,

猜你喜欢

转载自www.cnblogs.com/djlindex/p/12144082.html
今日推荐