2014广工数据结构实验报告抽象数据类型

2014广工数据结构实验报告抽象数据类型

ID:12758889

大小:358.50 KB

页数:14页

时间:2018-07-18

2014广工数据结构实验报告抽象数据类型_第1页
2014广工数据结构实验报告抽象数据类型_第2页
2014广工数据结构实验报告抽象数据类型_第3页
2014广工数据结构实验报告抽象数据类型_第4页
2014广工数据结构实验报告抽象数据类型_第5页
资源描述:

《2014广工数据结构实验报告抽象数据类型》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、数据结构设计性实验报告课程名称_____数据结构实验_题目名称树学生学院__计算机学院______专业班级13计科3班_学号__________学生姓名______指导教师_________2015年7月3日(1)设计任务、要求及所用软件环境或工具;(2)抽象数据类型定义以及各基本操作的简要描述;(3)所选择的存储结构描述及在此存储结构上各基本操作的实现;(4)程序清单(计算机打印),输入的数据及各基本操作的测试结果;(5)实验总结和体会。实验报告以规定格式的电子文档书写、打印并装订,排版及图表要清楚、工整。3.9思考题对设计性实验进行总结和讨论,包括

2、本实验的优、缺点,数据存储结构的特点,与其它存储结构之间的比较等。通过总结,可以对抽象数据类型有更全面、深入的认识,这是设计性实验不可缺少的重要内容。这部分内容应作为实验报告中的一个组成部分。1.题目:树所用软件为VS_2013基本操作:CreateTree(CSTree&T)功能:创建一棵树操作结果:输入根节点及孩子,构造一个用户自定义的树。DestroyTree(CSTree&T)初始条件:树T已存在。操作结果:销毁树T。TreeDepth(CSTreeT)初始条件:树T已存在。操作结果:返回T的深度。Empty(CSTreeT)初始条件:判断树T

3、是否为空操作结果:空为返回TURE,不空则返回FALSESearch(CSTreeT,TElemTypee)初始条件:树T已存在操作结果:查找T的结点e并返回其指针若这样的元素不存在,则返回值为0。LevelOrderTraverse(constCSTree&T)初始条件:树T已存在操作结果:层次遍历树TInsertChild(CSTreeT,inti,CSTreec)初始条件:树T已存在且非空,1≤i≤d+1操作结果:插入树作为T的第i棵子树2.存储结构定义公用头文件Header.h:#include#include

4、h>#include#defineMAX_TREE_SIZE100#defineTRUE1#defineFALSE0#defineOK1#defineERROR0#defineOVERFLOW-2typedefintStatus;typedefintTElemType;树操作头文件:Treefunction.h:#include"Header.h"#include#include#include//孩子兄弟表示的树typedefstructCSNode{chardata;s

5、tructCSNode*firstchild,*nextsibling;}*CSTree;3.算法设计TreeFunction.h:#include"Header.h"#include#include#include//孩子兄弟表示的树typedefstructCSNode{chardata;structCSNode*firstchild,*nextsibling;}*CSTree;/*------------程序中用到的队列------------------------------*/ty

6、pedefCSTreeQElemType;//队中的元素typedefstructQNode{QElemTypedata;structQNode*next;}QNode,*QueuePtr;/*typedefstructTreeName{charname;structCSNode*nametree;structTreeName*next;}TreeName,*TreeNameP;*/typedefstruct{QueuePtrfront;//队头指针QueuePtrrear;//队尾指针}LinkQueue;StatusInitQueue(LinkQu

7、eue&Q)//构造一个空队列{Q.front=Q.rear=(QueuePtr)malloc(sizeof(QNode));//队头结点if(!Q.front)exit(OVERFLOW);Q.front->next=NULL;returnOK;}StatusQueueEmpty(constLinkQueue&Q)//若队列为空,则返回TRUE,否则返回FALSE{if(Q.rear==Q.front)returnTRUE;returnFALSE;}StatusEnQueue(LinkQueue&Q,QElemTypee)//插入元素e为Q的新队尾元

8、素{QueuePtrp=(QueuePtr)malloc(sizeof(QNode));if(

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。