树转换为二叉树

1.所有兄弟结点之间加线

2.只保留与第一个孩子结点的连线,删除它与其他孩子子结点之间的连线

3.层次调整,孩子是左节点,兄弟是右结点

森林转换为二叉树

1.分别处理每棵树,将它们转换成二叉树

2.第一棵二叉树不变,从第二棵二叉树开始,后面的根结点依次是前面的兄弟结点,即右孩子

二叉树转换为树

1.如果某结点的左孩子结点存在,则将这个左孩子的右孩子、右孩子的右孩子......全部与该结点相连

2.删除原二叉树中所有结点与其右孩子的连线

3.层次调整

二叉树转换为森林(二叉树根结点有右孩子是森林,没有右孩子是树)

1.从根结点开始,若右孩子存在,删除与右孩子连线。再查看分离后的二叉树,若右孩子存在,则删除连线......直到所有的右孩子的连线都被删除掉。

2.将分离后的二叉树转换为树即可

树与森林的遍历问题

1.树的遍历有两种,一种是先跟遍历,一种是后根遍历

2.森林的遍历也有两种,一种是前序遍历,一种是后序遍历

3.森林和树的第一种遍历分别对应着相应二叉树的前序遍历,森林和树的第二种遍历分别对应着相应二叉树的中序遍历