首页 > 代码库 > 树与二叉树的转换
树与二叉树的转换
1.树转换为二叉树
1.在树中所有相同双亲结点的兄弟节点之间加一条线;
2.对树中不是双亲结点第一个孩子的结点,只保留新添加的该结点与左兄弟结点之间的连线,删去该结点与双亲结点之间的连线
3.整理所有保留的和添加的连线,使每个结点的第一个孩子节点连线位于左孩子指针位置,使每个结点的右兄弟结点连线位于右孩子指针位置。
2.二叉树还原为树
二叉树还原为树的方法:
1.若某结点是其双亲结点的左孩子,则把该节点的右孩子,右孩子的右孩子......都与该结点的双亲结点用线连起来
2.删除原二叉树中所有双亲结点与右孩子的连线
3.整理所有保留的和添加的连线,使每个结点的所有孩子结点位于相同的树层次
3.树的遍历
先根遍历,后根遍历
先根遍历:
1.访问根结点;2.按照从左到右的次序先根遍历根结点的每一颗子树
后根遍历:
1.按照从左到右的次序后根遍历根结点的每一棵子树
2.访问根结点
注意:
1.树的先根遍历序列一定和该树转换的二叉树的前序遍历序列相同。
2.树的后根遍历序列一定和该树转换的二叉树的中序遍历序列相同
树与二叉树的转换
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。