现在的位置: 首页 > 综合 > 正文

树——概述

2018年02月05日 ⁄ 综合 ⁄ 共 647字 ⁄ 字号 评论关闭

1. 术语

先看图

节点的度:指该节点的子树个数。如节点A的度是3,节点C的度是1,而节点F的度是0.

树的度:树中所有节点的度的最大值。如上图中树的度是3.

叶子:度为0 的节点。如节点K,L,F,G,M,I,J.

父亲和儿子:节点B是节点E和F的父亲,节点E和F是是节点B的儿子。

兄弟:同一父亲的儿子之间互称为兄弟。如节点H,I,J是兄弟。

一个节点的祖先:是指从根节点到该节点的路径上的所有节点。如节点M的祖先是节点A,D,H。

一个节点的后代:是指这个节点的子树中包含的所有节点。如节点B的后代是节点E,F,K,L.

节点的层:规定根节点为第一层,以后依次增1.

树的高度(深度):是树中所有节点的最大层数。如图中树的高度是4.

2.树的存储表示

      1)列表存储表示:树除了上图的表示方法之外,还有许多方法表示一棵树,例如可以用列表的形式表示,在这种表示方法中,每一颗子树都是一个列表,上图使用列表表示方法如下图所示。

(A(B(E(K, L), F), C(G), D(H(M) , I, J)))

注意:根节点的信息放在最前面,随后是该节点的子树组成的列表。

      2)左儿子——右兄弟存储表示:由于对固定大小的节点操作比较容易,因此我们要研究大小固定的存储表示方法。上图中的树采用左儿子——右兄弟存储表示如下图所示。

 

       3)二叉树存储表示:把左儿子——右兄弟的存储表示形式顺时针旋转45度即可得到二叉树存储表示(左儿子——右儿子)。上图旋转后的到二叉树如下图所示。

下图给出一个树——>左儿子—右兄弟——>二叉树的例子

【上篇】
【下篇】

抱歉!评论已关闭.