使用二叉链表作为存储结构的二叉树和树,它们的二叉链表是相同的,只是解释的方法不同而已。
树与二叉树之间的转换
树 = = > 二叉树的规则就是“左孩子右兄弟”,即:每个结点左指针指向它的第一个孩子,右指针指向它在树中的相邻右兄弟。另外,由于根结点没有兄弟,所以对应的二叉树没有右子树。
二叉树 = = > 树:上述过程的逆过程。如下图所示。
森林转换为二叉树
由于森林是多棵不相交的树的集合,先将森林中的每棵树转换为二叉树。
根据之前的规则,由于任何树转换成二叉树的右子树(对根结点而言)必空,则可在第一棵转换的二叉树的右子树接上第二棵转换的二叉树,以此类推。
森林= = > 二叉树, 如下图所示: