树转换为二叉树
1、加线。所有兄弟之间加一条线
2、去线。对树中每个结点,只保留它与第一个孩子结点的连线,删除它与其他孩子结点之间的连线
3、层次调整。以树的根结点为轴心,整棵树顺时针45度
![6IHi6s9Y8NgAAAAASUVORK5CYII=](https://i-blog.csdnimg.cn/blog_migrate/c88644ba3ea275adbd15693a44a40a7e.png)
森林转换二叉树
1、每棵树转换为二叉树
2、每一棵二叉树不动,从第二棵开始,依次把后一棵二叉树的根结点作为前一棵二叉树的根结点的右孩子
![+dfYIAAAAASUVORK5CYII=](https://i-blog.csdnimg.cn/blog_migrate/126b8408294ddb6300449a115d2782d1.png)
二叉树转换为树
1、加线
2、去线
3、层次调整
![W+v8b8n8Gzxal1QGGTgAAAABJRU5ErkJggg==](https://i-blog.csdnimg.cn/blog_migrate/4d158e84db359a2325f76173de1dde0d.png)
二叉树转换为森林
1、根结点出发,若右孩子存在,则把与右孩子结点的连线删除,对分离后的二叉树才用相同的操作,直到没有右孩子。
2、分离的每棵树转换为二叉树即可。
![wdMVUz7l9BlOgAAAABJRU5ErkJggg==](https://i-blog.csdnimg.cn/blog_migrate/084153df2eac075140949fd56901bf0b.png)
树和森林的遍历
树的遍历:
1、先根遍历,先访问根结点,再依次遍历根的每一棵子树。
2、后根遍历,先依次后根遍历每课子树,然后再访问根根结点。
![AKuZz8gSOJxMAAAAAElFTkSuQmCC](https://i-blog.csdnimg.cn/blog_migrate/731df04c12a5204754c63dc93b128f32.png)
森林的遍历:
1、前序遍历,ABCDEFGHJI
2、后序遍历,BCDAFEJHIG
![X9ZdhKWLIGSJgAAAABJRU5ErkJggg==](https://i-blog.csdnimg.cn/blog_migrate/c80678fb23005d62338f5cc25e5de8b3.png)