- 1、本文档共8页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验
【实验目的】
2.掌握二叉树的非线性和递归性特点
3.熟练掌握二叉树的递归遍历操作的实现方法,掌握二叉树的非递归遍历操作的实现
4.加深对二叉树结构和性质的理解,逐步培养解决实际问题的编程能力
【实验内容】
2.实现二叉树的基本操作:建空树、销毁二叉树、生成二叉树(先序,中序或后序)、判二叉树是否为空、
3.求二叉树的深度、求二叉树的根等基本算法;
4.实现二叉树的递归(先序、中序或后序)遍历算法;
【实验指导】1.首先将二叉树的链式存储结构定义放在一个头文件:如取名为BinTreeDef.h。
2.将二叉树的基本操作算法也集中放在一个文件之中,如取名为BinTreeAlgo.h。包含关于二叉树的链式结构操作的一些基本算法,如:InitBiTree、DestroyBiTree、CreateBiTree、BiTreeEmpty、BiTreeDepth、Root、PreOrderTraverse、InOrderTraverse 等。
3.将函数的测试和主函数组合成一个文件,如取名为BinTreeUse.cpp。
利用二叉树的链式存储结构,设计一组输入数据(假定为一组整数或一组字符),能够对二叉树进行如下操作:
1.创建一棵空二叉树;
2.对一棵存在的二叉树进行销毁;
3.根据输入某种遍历次序输入二叉树中结点的值,依序建立二叉树;
4.判断某棵二叉树是否为空;
5.求二叉树的深度;
6.求二叉树的根结点,若为空二叉树,则返回一特殊值;
7.二叉树的遍历,即按某种方式访问二叉树中的所有结点,并使每个结点恰好被访问一次;
8.编写主程序,实现对各不同的算法调用;
实现要求如下:
“构造空二叉树算法”操作结果:构造一个空二叉树T;
“销毁二叉树算法”初始条件: 二叉树T 存在;操作结果: 销毁二叉树T ;
“创建二叉树算法”初始条件:可以根据先序、中序和后序输入二叉树中结点的值(可为字符型或整型);操作结果: 以选择的某种次序建立二叉树T ;
“判二叉树是否为空算法”初始条件: 二叉树T 存在;操作结果: 若T 为空二叉树,则返回TRUE,否则FALSE ;
“求二叉树的深度算法” 初始条件: 二叉树T 存在;操作结果: 返回T 的深度;
“求二叉树的根算法”初始条件: 二叉树T 存在;操作结果: 返回T 的根;
“先序递归遍历算法”初始条件: 二叉树T 存在,Visit 是对结点操作的应用函数;
操作结果: 先序递归遍历T,对每个结点调用函数Visit 一次且仅一次;
“中序递归遍历算法”初始条件: 二叉树T 存在,Visit 是对结点操作的应用函数;
操作结果: 中序递归遍历T,对每个结点调用函数Visit 一次且仅一次;
“后序递归遍历算法”初始条件: 二叉树T 存在,Visit 是对结点操作的应用函数;
操作结果: 后序递归遍历T,对每个结点调用函数Visit 一次且仅一次;
长春大学计算机科学技术学院实验报告日期_______________ 地点______________ 指导教师_____________ 成绩
实验 树的操作与应用
利用二叉树的链式存储结构,设计一组输入数据(假定为一组整数或一组字符),能够对二叉树进行如下操作:
1.创建一棵空二叉树;
2.对一棵存在的二叉树进行销毁;
3.根据输入某种遍历次序输入二叉树中结点的值,依序建立二叉树;
4.判断某棵二叉树是否为空;
5.求二叉树的深度;
6.求二叉树的根结点,若为空二叉树,则返回一特殊值;
7.二叉树的遍历,即按某种方式访问二叉树中的所有结点,并使每个结点恰好被访问一次;
实现过程:
1、文件pubuse.h,与实验一相同;
2.文件BinTreeDef.h 中实现了二叉树的链式存储结构定义
typedef struct BiTNode
{
TElemType data;
struct BiTNode *lchild,*rchild; /* 左右孩子指针*/
}BiTNode,*BiTree;
3. 文件BinTreeAlgo.h 中实现二叉树的基本操作(存储结构由BinTreeDef.h 定义)
Status InitBiTree(BiTree T)
{ /* 操作结果: 构造空二叉树T */
T=NULL;
return OK;
}
void DestroyBiTree(BiTree T)
{ /* 初始条件: 二叉树T 存在。操作结果: 销毁二叉树T */
if(T) /* 非空树*/
{
if(T-lchild) /* 有左孩子*/
DestroyBiTree(T-lchild); /* 销毁左孩子子树*/
if(T-rchild) /* 有右孩子*/
DestroyBiTree(T-rchild); /* 销毁
您可能关注的文档
- 数据结构实验六A.doc
- 实验四 进程通信.doc
- 数据流图画法要求.doc
- 我的铨叙报告.doc
- 新人教二下 美术教案.doc
- 热控提岗考试题库1.doc
- 社会化管理制度.doc
- 推土机相关材料.doc
- 日语纺织词汇.doc
- 时间商品期货交易.doc
- 2025至2030中国咽喉用药行业市场发展现状及发展趋势与投资风险报告.docx
- 2025至2030中国咽喉用药行业发展分析及产业运行态势及投资规划深度研究报告.docx
- 2025至2030中国品牌女装行业产业运行态势及投资规划深度研究报告.docx
- 2025至2030中国品牌女装行业发展分析及发展趋势分析与未来投资战略咨询研究报告.docx
- 新生儿布书讲解.pptx
- 2025至2030中国品牌家用豆浆机行业营销模式创新与发展前景展望报告.docx
- 2025至2030中国品牌鞋行业项目调研及市场前景预测评估报告.docx
- 外科腹部手术护理.pptx
- 2025至2030中国哈密瓜果脯行业市场发展现状及发展趋势与投资策略报告.docx
- 2025年青海省事业单位招聘考试职业能力倾向测验试卷(经济管理类).docx
最近下载
- 基于PLC的自动售货机的系统设计.docx
- 2024年四川普通高中会考历史真题及答案.docx VIP
- 技术创新对经济增长驱动作用差异性实证研究.docx VIP
- 迅达电梯5500电气原理图纸图带注释mx-gc7.2(中文版).pdf
- 实变函数论与泛函分析(下) 习题解答.pdf.pdf VIP
- JGJ33-2012《建筑机械使用安全技术规程》.pptx
- 17-实变函数论与泛函分析(下册·第二版修订版)-夏道行-2010.pdf VIP
- 16-实变函数论与泛函分析(上册·第二版修订版)-夏道行--2010.pdf VIP
- 国开《政治经济学》第四次形成性考核任务参考资料.pdf VIP
- 实用软件工程第3版习题解答-附答案.pdf VIP
文档评论(0)