树和二叉树基本概念和性质

1、结点:树中的一个独立单元。包含一个数据元素及若于指向其子树的分支,如上图树中的所有圆圈。

2、结点的度:结点拥有的子树数称为结点的度。上图树中,A的度为4,B的度为2,G的度为1,K的度为0。

3、树的度: 树的度是树内各结点度的最大值。上图树中,树的度为4。

4、叶子:度为0 的结点称为叶子或终端结点。如上图树中的F、G、H等。

5、非终端结点:度不为0 的结点称为非终端结点或分支结点。除根结点之外,非终端结点也称为内部结点。

6、双亲和孩子:结点的子树的根称为该结点的孩子,相应地,该结点称为孩子的双亲。如上图树中,B的双亲为A,B的孩子为F、G。

7、兄弟:同一个双亲的孩子之间互称兄弟。

8、祖先:从根到该结点所经分支上的所有结点。

9、子孙:以某结点为根的子树中的任一结点都称为该结点的子孙。

10、层次:结点的层次从根开始定义起,根为第一层,根的孩子为第二层。树中任一结点的层次等千其双亲结点的层次加1。

11、堂兄弟:双亲在同一层的结点互为堂兄弟。

12、树的深度:树中结点的最大层次称为树的深度或高度。如上图树的深度为5。

13、有序树和无序树:如果将树中结点的各子树看成从左至右是有次序的(即不能互换),则称该树为有序树,否则称为无序树。在有序树中最左边的子树的根称为第一个孩子,最右边的称为最后一个孩子。

14、森林:是m (m>=0)棵互不相交的树的集合。对树中每个结点而言,其子树的集合即为森林。

二叉树

1、二叉树的5种形态:

  • 空二叉树
  • 仅有根结点的二叉树
  • 右子树为空的二叉树
  • 左右树均非空的二叉树
  • 左子树为空的二叉树

2、在二叉树的第i层上至多有2^{i-1}个结点(i>=1)。

3、深度为k的二叉树至多有2^{k}-1个结点(k>=1)。

4、对任何一棵二叉树T, 如果其终端结点数为n,度为2的结点数为m,则n=m+1。 

5、满二叉树:深度为k且含有2^{k}-1个结点的二叉树,如下图。满二叉树的特点是:每一层上的结点数都是最大结点数,即每一层il的结点数都具有最大值2^{i-1}

6、完全二叉树:深度为K的, 有n个结点的二叉树, 当且仅当其每一个结点都与深度为K的满二叉树中编号从1至n的结点一一对应时, 称之为完全二叉树。如下图。完全二叉树的特点是:叶子结点只可能在层次最大的两层上出现;(2)对任一结点, 若其右分支下的子孙的最大层次为L, 则其左分支下的子孙的最大层次必为L或L+1。

7、 具有n 个结点的完全二叉树的深度为\left \lfloor log_{2}n\right \rfloor+1\left \lfloor x \right \rfloor表示不大于x的最大整数。

8、如果对一棵有n 个结点的完全二叉树(其深度为\left \lfloor log_{2}n\right \rfloor+1) 的结点按层序编号(从第1 层到第\left \lfloor log_{2}n\right \rfloor+1层, 每层从左到右), 则对任一结点 i (1<=i<=n), 有:

  • 如果i =1 , 则结点 i 是二叉树的根,无双亲;如果i>1 , 则其双亲PARENT(i)是结点\left \lfloor i/2\right \rfloor
  • 如果2i+1>n, 则结点 i 无左孩子(结点 i 为叶子结点);否则其左孩子LCHILD(i)是结点2i=1。
  • 如果2i+1>n, 则结点无右孩子;否则其右孩子RCHILD(i)是结点2i+1。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章