数据结构-树(二)

2020-10-24 10:13:00
六月
来源:
https://blog.csdn.net/qq_34760508/article/details/86596420
转贴 942

二叉树特点

  由二叉树的定义,以及图中所示的二叉树的分析可以得出二叉树具有以下几个特点:
  (1)每个节点最多有两颗子树,所以二叉树中不存在度大于2的节点。
  (2)左子树和右子树是有顺序的,次序不能任意颠倒。
  (3)即使树中某节点只有一棵子树,也要区分它是左子树还是右子树。

二叉树性质

  (1)在二叉树的第i层上最多有2 i-1 个节点 。(i>=1)
  (2)二叉树中如果深度为k,那么最多有2 k-1个节点。(k>=1)
  (3)n 0=n 2+1 n 0表示度数为0的节点数,n 2表示度数为2的节点数。
  (4)在完全二叉树中,具有n个节点的完全二叉树的深度为[log 2n]+1,其中[log 2n]是向下取整。
  (5)若对含 n 个节点的完全二叉树从上到下且从左至右进行 1 至 n 的编号,则对完全二叉树中任意一个编号为 i 的节点有如下特性:
    (5)- 1,若 i=1,则该节点是二叉树的根,无双亲, 否则,编号为 [i/2] 的节点为其双亲节点;
    (5)- 2,若 2i>n,则该节点无左孩子, 否则,编号为 2i 的节点为其左孩子节点;
    (5)- 3,若 2i+1>n,则该节点无右孩子节点, 否则,编号为2i+1 的节点为其右孩子节点。

斜树

   斜树:所有的节点都只有左子树的二叉树叫左斜树。所有节点都是只有右子树的二叉树叫右斜树,这两者统称为斜树。

满二叉树

    满二叉树:在一棵二叉树中。如果所有分支节点都存在左子树和右子树,并且所有叶子都在同一层上,这样的二叉树称为满二叉树。
满二叉树的特点有:
  (1)叶子只能出现在最下一层。出现在其它层就不可能达成平衡。
  (2)非叶子节点的度一定是2。
  (3)在同样深度的二叉树中,满二叉树的节点个数最多,叶子节点数最多。

完全二叉树

   完全二叉树:对一颗具有n个节点的二叉树按层编号,如果编号为i(1<=i<=n)的节点与同样深度的满二叉树中编号为i的节点在二叉树中位置完全相同,则这棵二叉树称为完全二叉树。 图4.6为一棵完全二叉树

完全二叉树特点
  (1)叶子节点只能出现在最下层和次下层。
  (2)最下层的叶子节点集中在树的左部。
  (3)倒数第二层若存在叶子节点,一定在右部连续位置。
  (4)如果节点度为1,则该节点只有左孩子,即没有右子树。
  (5)同样节点数目的二叉树,完全二叉树深度最小。

   :满二叉树一定是完全二叉树,但反过来不一定成立。

参考: https://blog.csdn.net/qq_34760508/article/details/86596420

发表评论
评论通过审核后显示。