1.如何将一棵树转换成二叉树?
将树转换成二叉树: ① 加线:在各兄弟结点之间用虚线相连
② 抹线:对每个结点,除了其左孩子外,去除其与其余孩子之间的关系 ③ 旋转:以树的根结点为轴心,将整树顺时针转45°
2将二叉树转换成树: ① 加线:若p结点是双亲结点的左孩子,则将p的右孩子,右孩子的右孩子……沿分支找到的所有右孩子,都与p的双亲用线连起来 ② 抹线:抹掉原二叉树中双亲与右孩子之间的连线 ③ 调整:将结点按层次排列,形成树结构
3.将二叉树转换为森林
<3>
二叉树转换为森林
将一棵二叉树转化成森林,可按如下步骤进行:
①
抹线:
将二叉树根结点与其右孩子之间的连线,以及沿着此右孩子的右链连续不继搜索到
的右孩子间的连线抹掉。这样就得到了若干棵根结点没有右子树的二叉树。
②
将得到的这些二叉树用前述方法分别转化成一般树。
将一棵二叉树转化成森林,可按如下步骤进行:
①抹线:将二叉树根结点与其右孩子之间的连线,以及沿着此右孩子的右链连续不继搜索到的右孩子间的连线抹掉。这样就得到了若干棵根结点没有右子树的二叉树。
②将得到的这些二叉树用前述方法分别转化成一般树。
<3>
二叉树转换为森林
将一棵二叉树转化成森林,可按如下步骤进行:
①
抹线:
将二叉树根结点与其右孩子之间的连线,以及沿着此右孩子的右链连续不继搜索到
的右孩子间的连线抹掉。这样就得到了若干棵根结点没有右子树的二叉树。
②
将得到的这些二叉树用前述方法分别转化成一般树。
4,。将森林转换为二叉树 ①将森林中每棵子树转换成相应的二叉树。形成有若干二叉树的森林,
②按森林图形中树的先后次序,依次将后边一棵二叉树作为前边一棵二叉树根结点的右子树,这样整个森林就生成了一棵二叉树,实际上第一棵树的根结点便是生成后的二叉树的根结点。
<3>
二叉树转换为森林
将一棵二叉树转化成森林,可按如下步骤进行:
①
抹线:
将二叉树根结点与其右孩子之间的连线,以及沿着此右孩子的右链连续不继搜索到
的右孩子间的连线抹掉。这样就得到了若干棵根结点没有右子树的二叉树。
②
将得到的这些二叉树用前述方法分别转化成一般树。