1、树与二叉树的对应关系
-
二叉树可以用二叉链表作为存储结构;
树也可以使用二叉链表作为存储结构。
一棵树和一个二叉树由此建立对应关系
如下,

-
任意一颗和
树对应的二叉树,其右结点必定为空(因为树的根结点是没有兄弟结点的,其二叉链表根节点的右链域必为空)。
2、森林和二叉树的对应关系
-
方法:
把森林中的第二棵树的根结点、第三棵树的根结点… 都看作是第一棵树的根结点的兄弟结点。
因此顺着第一棵树的根结点右链域依次排下去 -
一个实例如下图

3、森林或数 <----> 二叉树 (相互转化)
- 森林转换成二叉树( F2B )
已知森林F= { T1 , T2 , … , Tm } ,B= { ROOT,LB,RB }
a. 若F为空,则m= 0 ,B为空树。
b. 若F非空 ,则m不为0,B的根root即为F中 T1 的根结点 ROOT(T1);B的左子树 LB 是从 T1 根结点的子树森林F1 = { T11 , T12 , … , T1m } 转换而成的二叉树;B的右子树 RB 是从森林 F ’ = { T2 , T3, … , Tm } 转换而成的二叉树。 - 二叉树转换成森林( B2F )
已知B= { ROOT,LB,RB },森林F= { T1 , T2 , … , Tm }
a. 若B为空,那么F为空
b.若B非空,则 F 中第一棵树 T1 的根 ROOT(T1) 即为二叉树 B 的根 root;T1 的子树森林 F1 是由LB转化而来;而 T2,T3,… ,Tm 组成的森林是由RB转换而来。
本文详细介绍了树与二叉树之间的对应关系,以及如何将森林转换为二叉树和反之的过程。通过将树的根节点视为二叉树的左孩子,兄弟节点视为右孩子的连接,可以建立起两者之间的转换规则。同时,森林到二叉树的转化也遵循类似的原则,将森林中后续树的根节点视为前一棵树的右孩子。这些概念对于理解和操作树形数据结构至关重要。
524

被折叠的 条评论
为什么被折叠?



