树、森林及二叉树的相互转换

1.普通树转换为二叉树

树、森林及二叉树的相互转换

  • 加线,在所有兄弟结点之间加一条连线。树、森林及二叉树的相互转换

  • 去线,对树中每个结点,只保留它与第一孩子结点的连线,删除它与其他孩子结点之间的连线。树、森林及二叉树的相互转换

  • 层次调整,以树的根结点为轴心,将整棵树顺时针旋转一定的角度,使之结构层次分明
    树、森林及二叉树的相互转换

2.森林转换成二叉树

  • 把每棵树转换为二叉树。

  • 第一棵二叉树不动,从第二棵二叉树开始,依次把后一棵二叉树的根结点作为前一棵二叉树的根结点的右孩子,用线连接起来。

3.二叉树转换成森林、普通树

判断一棵二叉树能够转换成一棵树还是森林,标准很简单,那就是只要看这棵二叉树的根结点有没有右孩子,有的话就是森林,没有的话就是普通树。
树、森林及二叉树的相互转换
树、森林及二叉树的相互转换
树、森林及二叉树的相互转换
树、森林及二叉树的相互转换