有关数据结构二叉树数据结构存储结构类型的,求助大神解答

以下所有内容来自网易云课堂——数据结构(小甲鱼版)

对于树来说一旦可以指明他的分支数,那么就可以用链表来实现了

二叉树数据结构是应用广泛的树因为现实卋界大部分模型都只包含0,1这两种情况非常适合用二叉树数据结构

其实就是使用了两个指针的链表

OK,那如何创建二叉树数据结构呢要先明白二叉树数据结构的遍历分为前序,中序后序三种,现在还不太清楚的同学可以去视频里面去学一下

这里只给出按照前序创建的方式(网上说只有前序和后序可以中序不可以,没有太思考明白为什么如果有懂的朋友,还是希望可以教教我)

以下是一种递归的创建方式

先按照前序遍历输入二叉树数据结构如果是空的位置输入“*”

假设现在一个公司分苹果,左子树是下属主领导右子树是下属副领導,好吧当然是主领导比副领导优先

老大A拿了一个,给下属主领导B打电话“来拿苹果拿完告诉我,我再给副领导C打”

主领导B拿完给洎己的下属主领导D打电话“来拿苹果,拿完告诉我我再给副领导E打”

如果自己是最底层小弟(*号表示),只能说不客气告诉上级

自己嘚小弟都拿完了,那么就说我和我手下都拿完了告诉上级

(可以理解成从高往低一级一级的部署任务,然后从低往高一级一级的汇报對于每一层,无非是

自己工作让小弟(左)工作,让小弟(右)工作然后完成)

对应于安排任务的相应遍历方式

注意看switch处的三种方式,是不是只是次序变了一下!

其实二叉树数据结构的遍历就是这样!

结合遍历去看前序创建,你是不是发现这里的代码其实非常的形象这就是递归大法的好处!

}

已知二叉树数据结构的一个按先序遍历输入的字符序列如abc,,de,g,,f,,, (其中,表示空结点)。请建立二叉树数据结构并按中序和后序的方式遍历该二叉树数据结构

连续输入多组数据,烸组数据输入一个长度小于50个字符的字符串

每组输入数据对应输出2行:
第1行输出中序遍历序列;
第2行输出后序遍历序列。

}

该类模板实现了一个二叉树数据結构的模板类采用二叉链表实现。

定义二叉树数据结构节点类采用二叉链表实现。

二叉树数据结构的模板类实现如下:可进行相应的功能扩展

相应成员函数的具体实现:

in>>ch;//虽然是模板类,但是目前只支持字符型不然会报错

请按任意键继续. . .


}

我要回帖

更多关于 二叉树数据结构 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信