树转化成二叉树
- 兄弟之间连线
- 只留下与长子的连线
- 顺时针旋转
森林转换成二叉树
- 每棵树转化为二叉树
- 后一棵二叉树作为前一棵的右孩子,依次连接
二叉树转化成树
- 若某个节点有左节点,把这个节点把左节点的所有右孩子(即右孩子的右孩子的右孩子...无限重复, 也可以理解为一直向右的路径)连接
- 去掉所有节点与右孩子的连线
- 旋转调整层次
二叉树转化成森林
- 从根节点开始,去掉与右节点的连线,分离出右孩子为根的子树(注意: 对每棵子树的处理只看根节点有没有右孩子)
- 对这棵新的子树重复1的操作,直到新的子树没有右孩子
- 把所有的子二叉树转化为树