树的基本概述

一个结点的度是指该结点的子树个数,而树的度是树中所有结点的度的最大值,数的层规定根结点为第一层,其他所有结点的层都是其父结点的层号加1,树的高度或深度是树中所有结点的最大层号。
二叉树的性质:

  • 在二叉树中,第i层的结点数最多为 2i1 ,i>=1.
  • 在深度为k的二叉树中,结点总数最多为 2k -1,k>=1.
  • 对任何非空的二叉树T,如果叶结点的个数为 n0 ,而度为2的结点数为 n2 ,则 n0 = n2 +1.

满二叉树定义:一个深度为k且具有 2k -1个结点的二叉树。
完全二叉树定义:一个深度为k具有n个结点的二叉树且其结点的排版顺序是与让深度为k的满二叉树结点编号从1到n相对应,其性质如下:

  • 若 i!=1,则其父结点parent(i)的编号为[i/2],若i=1,则i是根节点。
  • 若2i<=n,则左儿子left_child(i)的编号为2i,若2i>n,则i没有左儿子。
  • 若2i+1<=n,则其右儿子right_child(i)的编号为2i+1,若2i+1>n,则i没有右儿子。

树的两种存储方式,数组和链表,例子如图:

树的基本概述_第1张图片
因此可以看输出数组存储类似这种倾斜的二叉树很浪费空间,而链表则不会。

你可能感兴趣的:(二叉树概述,树的性质)