[数据结构]树、森林和二叉树的转换

转载 2017年11月15日 16:03:55

树转换为二叉树

(1)加线。在所有兄弟结点之间加一条连线。

(2)去线。树中的每个结点,只保留它与第一个孩子结点的连线,删除它与其它孩子结点之间的连线。

(3)层次调整。以树的根节点为轴心,将整棵树顺时针旋转一定角度,使之结构层次分明。(注意第一个孩子是结点的左孩子,兄弟转换过来的孩子是结点的右孩子)
这里写图片描述

森林转换为二叉树

(1)把每棵树转换为二叉树。

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

这里写图片描述

二叉树转换为树

是树转换为二叉树的逆过程。

(1)加线。若某结点X的左孩子结点存在,则将这个左孩子的右孩子结点、右孩子的右孩子结点、右孩子的右孩子的右孩子结点…,都作为结点X的孩子。将结点X与这些右孩子结点用线连接起来。

(2)去线。删除原二叉树中所有结点与其右孩子结点的连线。

(3)层次调整。

这里写图片描述

二叉树转换为森林

假如一棵二叉树的根节点有右孩子,则这棵二叉树能够转换为森林,否则将转换为一棵树。

(1)从根节点开始,若右孩子存在,则把与右孩子结点的连线删除。再查看分离后的二叉树,若其根节点的右孩子存在,则连线删除…。直到所有这些根节点与右孩子的连线都删除为止。

(2)将每棵分离后的二叉树转换为树。

这里写图片描述

Reference:

[1] 《大话数据结构》
转自:https://www.cnblogs.com/zhuyf87/archive/2012/11/04/2753950.html

数据结构------树,森林及二叉树的转换方法

一、普通树转化为二叉树        (1)加线:在所有兄弟节点之间加一条连线             (2)去线:对树中的每个节点,只保留它与第一个节点的连线,删除它与其他孩子节点之间的连线...
  • u011459278
  • u011459278
  • 2014年03月24日 23:08
  • 3286

树、森林与二叉树相互转化原理图

1、树转换为二叉树 由于二叉树是有序的,为了避免混淆,对于无序树,我们约定树中的每个结点的孩子结点按从左到右的顺序进行编号。 将树转换成二叉树的步骤是: (1)加线。就是在所有兄弟结点之间加一条...
  • sddxqlrjxr
  • sddxqlrjxr
  • 2016年04月07日 11:52
  • 15350

树、森林与二叉树的转换总结

前言:   在树这一块的数据结构中最重要的就是二叉树,但是对于我们大部分人来说二叉树的基础掌握还是ok的,但是有时候我们也会忽略了树于森林(本人就是忽略了),今天就在这里总结总结数、森林与二叉树的转换...
  • xin917480852
  • xin917480852
  • 2016年01月12日 15:27
  • 1279

数据结构5.12树、森林与二叉树的转换

  • 2014年11月19日 10:55
  • 401KB
  • 下载

二叉树与树、森林的转换(数据结构课设)

  • 2010年06月21日 18:18
  • 987KB
  • 下载

《数据结构导论之树、二叉树、森林间的转换》

树、二叉树、森林间一共有三种转换,作为一种应用题的类型出现,小编在这里以真题为典型例证为大家撰写转换过程,愿为大家开阔思路,增添自考胜算。...
  • yxf15732625262
  • yxf15732625262
  • 2016年10月16日 16:47
  • 356

数据结构:树、森林和二叉树的转换

1、树转换为二叉树 (1)加线。在所有兄弟结点之间加一条连线。 (2)去线。树中的每个结点,只保留它与第一个孩子结点的连线,删除它与其它孩子结点之间的连线。 (3)层次调整。以树的根...
  • u010889616
  • u010889616
  • 2015年08月28日 10:24
  • 1179

数据结构之树、森林和二叉树的转换

数据结构
  • sinat_35512245
  • sinat_35512245
  • 2016年12月06日 11:15
  • 328

数据结构--树、森林和二叉树的转换

树转换为二叉树 (1)加线。在所有兄弟结点之间加一条连线。 (2)去线。树中的每个结点,只保留它与第一个孩子结点的连线,删除它与其它孩子结点之间的连线。 (3)层次调整。以树的根节点...
  • suguoliang
  • suguoliang
  • 2017年12月18日 20:33
  • 16

11.14数据结构----二叉树,树,森林之间的转换

昨天我学习了森林与二叉树转换中的树转换成二叉树,我得先回顾一下,怎么说?他的四个步骤分别是:1.加虚线法,就是在树的每层按从“左至右”的顺序在兄弟结点之间加虚线相连。2.去连线,即除最左的第一个子结点...
  • meng894120
  • meng894120
  • 2013年11月14日 19:33
  • 795
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:[数据结构]树、森林和二叉树的转换
举报原因:
原因补充:

(最多只允许输入30个字)