- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
树形数据结构及其应用
淮海工学院计算机工程学院
实验报告书
课程名: 《 数 据 结 构》
题 目: 树形数据结构及其应用
班 级:
学 号:
姓 名:
实验2 树形数据结构
实验目的和要求
1.熟练掌握二叉树的二叉链表存储结构;二叉树的常用遍历方法:按层遍历、先序递归遍历、中序递归和非递归遍历、后序递归遍历。
2.掌握按先序遍历顺序输入数据,递归建立二叉树的方法。
3. 掌握建立哈夫曼树的方法,实现哈夫曼编码。
实验环境
Turbo C 或VC++
实验学时
4学时,必做实验
实验题目
[问题描述] 建立一棵用二叉链表方式存储的二叉树,并对其进行遍历(先序、中序和后序),打印输出遍历结果。
[基本要求] 从键盘接受输入先序序列,以二叉链表作为存储结构,建立二叉树(以先序来建立)并对其进行遍历(先序、中序、后序),然后将遍历结果打印输出。要求采用递归和非递归两种方法实现。
[测试数据] ABCффDEфGффFффф(其中ф表示空格字符)
输出结果为: 先序:ABCDEGF
中序:CBEGDFA
后序:CGBFDBA
2.已知二叉树按照二叉链表方式存储,编写算法,要求实现二叉树的竖向显示(竖向显示就是二叉树的按层显示)。
[提示]:
(1)参习题6.20,实现逐层遍历
(2)队中保存每个结点的打印位置,其左、右子的距离
3.如题1要求建立好二叉树,按凹入表形式打印二叉树结构,如图6.34所示。
A
B C
D E
图6.34
F
主要数据结构
1.
typedef char DataType;
typedef struct Node
{
DataType data;
struct Node *LChild;
struct Node *RChild;
}BiTNode, *BiTree;
2.
ypedef BiTree QueueElementType;
typedef struct
{
QueueElementType element[MAXSIZE]; /* 队列的元素空间*/
int front; /*头指针指示器*/
int rear; /*尾指针指示器*/
}SeqQueue;
3.void InitQueue(SeqQueue *Q)/*初始化操作*/
4.int EnterQueue(SeqQueue *Q, QueueElementType x)/*入队操作*/
5.int DeleteQueue(SeqQueue *Q, QueueElementType *x)/*出队操作*/
6.int LayerOrder(BiTree bt)
7.InitQueue(Q); /*初始化空队列Q*/
8.void CreateBiTree(BiTree *bt)
9.void PreOrder(BiTree root)//先序遍历二叉树
10.void InOrder(BiTree root)//中序遍历二叉树
11.void PostOrder(BiTree root)//后序遍历二叉树
12.int CreateBiTree(BiTree T) //创建一棵非空二叉树
13.void PrintTree(BiTree Boot,int nLayer) /* 打印二叉树 */
主要算法
用递归和非递归进行遍历(先序、中序、后序)
按图进行遍历
用队列编写二叉链表存储:初始化、入队、出队
运行结果
递归
非递归
2.
3.
实验体会
代码可能有点冗长,对后序线索二叉树求后继节点实现的不是很好。
这次任务量有点大,实现的函数太多,全部放在一个文件里不利于维护与修改。
附源代码
递归:
#include stdio.h
#include malloc.h
#include conio.h
typedef char DataType;
typedef struct Node
{
DataType data;
struct Node *LChild;
struct
您可能关注的文档
最近下载
- 2021版35kV~750kV 变电站通用设备技术规范第13部分:接地变压器及消弧线圈成套装置.pdf VIP
- 心脏横纹肌瘤的科普知识课件.pptx VIP
- 2021版35kV~750kV 变电站通用设备技术要求及接口规范第2部分:高压并联电抗器.pdf VIP
- 新概念英语二册Mp3教程附音频下载-英语听力_0.pdf VIP
- 2021版35kV~750kV 变电站通用设备技术规范第9部分:低压并联电抗器.pdf VIP
- 2021版35kV~750kV 变电站通用设备技术规范第第12部分:站用变压器.pdf VIP
- 初一有理数计算700题.docx VIP
- 市政供热管网施工技术的方案.doc
- 循环教材制度_使用登 记表.doc VIP
- 部编小学语文六年级上册第二单元《革命岁月》集体备课教材分析解读.pptx VIP
文档评论(0)