ImageVerifierCode 换一换
格式:DOCX , 页数:21 ,大小:46.91KB ,
资源ID:3182578      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/3182578.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(实验五二叉树遍历.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

实验五二叉树遍历.docx

1、实验五二叉树遍历2014秋学期算法与数据结构实验报告书 项目名称: 二叉树的遍历指导老师: 金萍老师 项目时间:2014-11-8 项目成员: 张峻峰瞿子晶一引言21.1编写目的21、熟练掌握二叉树的存储结构。22、熟练掌握二叉树基本操作的实现。21.2参考资料2二项目介绍22.1项目简介22.2软件运行环境2三需求分析23.1总体需求分析23.2主界面需求分析2四总体模块设计31.操作菜单:32.选择菜单:33.二叉树的创建:34.二叉树的销毁:35.先序遍历二叉树:36.中序遍历二叉树:37.后序遍历二叉树:38.层序遍历二叉树:310.测量二叉树深度:3五详细设计41.主函数42.菜单函

2、数43.二叉树操作菜单44.创建二叉树函数45.销毁二叉树函数46.先序遍历二叉树47.中序遍历二叉树58.后序遍历二叉树59.层序遍历二叉树510.叶子结点的数目511.测量二叉树深度5六心得体会6七附录(代码)6二叉树的遍历一引言1.1编写目的1、熟练掌握二叉树的存储结构。2、熟练掌握二叉树基本操作的实现。1.2参考资料数据结构(C语言版);二项目介绍2.1项目简介二叉树()是另一种树型结构,它的特点是每个结点至多只有两棵子树(即二叉树中不存在度大于2的结点),并且,二叉树的子树有左右之分,其次序不能任意颠倒。开发工具 6.02.2软件运行环境 处理器无要求,32以上内存,硬盘1以上 (R

3、) (R) 系列所有操作系统三需求分析3.1总体需求分析1.二叉树的创建2.二叉树的销毁3.先序遍历二叉树4.中序遍历二叉树5.后序遍历二叉树6.层序遍历二叉树7.统计二叉树中叶子结点的数目8.测量二叉树的深度3.2主界面需求分析设计菜单界面显示所有操作。四总体模块设计1.操作菜单:输出选择界面菜单2.选择菜单:输入数字选择对应操作功能3.二叉树的创建:按先序次序建立一个新的二叉树4.二叉树的销毁:将二叉树销毁5.先序遍历二叉树:先序遍历T,对每个结点函数调用一次且一次。一旦()失败,则操作失败。6.中序遍历二叉树:中序遍历T,对每个结点函数调用一次且一次。一旦()失败,则操作失败。7.后序遍

4、历二叉树:后序遍历T,对每个结点函数调用一次且一次。一旦()失败,则操作失败。8.层序遍历二叉树:层序遍历T,对每个结点函数调用一次且一次。一旦()失败,则操作失败。9.叶子结点的数目:统计二叉树中叶子结点的数目10.测量二叉树深度:测量二叉树的深度五详细设计1.主函数功能说明主函数原型 ()输入按键输入输出无返回值无2.菜单函数功能说明主函数原型 ()输入按键输入输出无返回值无3.二叉树操作菜单功能说明二叉树操作菜单原型 ( )输入输入 0-8数字输出无返回值无4.创建二叉树函数功能说明先序创建二叉树原型 ( )输入无 输出无 返回值二叉树的根地址5.销毁二叉树函数功能说明销毁二叉树原型 (

5、 )输入无 输出无 返回值二叉树的根地址6.先序遍历二叉树功能说明先序遍历二叉树原型 ( T, (*)( e)输入无输出无返回值若遍历成功,则返回,否则返回7.中序遍历二叉树功能说明中序遍历二叉树原型 ( T, (*)( e)输入无输出无返回值若遍历成功,则返回,否则返回8.后序遍历二叉树功能说明后序遍历二叉树原型 ( T, (*)( e)输入无输出无返回值若遍历成功,则返回,否则返回9.层序遍历二叉树功能说明层序遍历二叉树原型 ( T, (*)( e)输入无输出无返回值若遍历成功,则返回,否则返回10.叶子结点的数目功能说明叶子结点的数目原型 ( T)输入无输出叶子结点的数目返回值二叉树首地

6、址11.测量二叉树深度功能说明测量二叉树深度原型 ( T)输入无输出测量二叉树深度返回值二叉树出栈元素地址六心得体会张峻峰:本次二叉树的遍历学习让我了解二叉树存储方式。在建立二叉树时我是采用二叉链表存储结构进行存储的。输入时按先序次序输入二叉树中结点的值,这就要求我们要熟练的掌握二叉树的先序遍历。在写功能函数时,主要采用递归方法,使程序的结构更加简单。在写层序遍历二叉树时,要使用队列进行操作。这就要求我们熟练的掌握队列的操作。在写这一功能函数时,我遇到了一个困难。每当我执行层序遍历二叉树功能时,总是将二叉树中的数值删除了,后来我将形参中的指针传递换成了变量传递,最终解决了这一问题。本次的实验让

7、我更加的了解二叉树的遍历,对二叉树的存储有了更深的理解。瞿子晶:这次的实验写了五个函数,创建,销毁,先序,中序,和测量树的深度,写完后没有运行,因为编译器有点问题。后来和组长开了一个小会,就把我写的代码修改修改,然后合成,还是有用的,感觉很开心吧。虽然比较难都是组长写的,但是吧他也有令我理解他的代码,所以总体而已,较之前进步了。我会继续加油的!七附录(代码) 1 0 1 0 -1 -2 100 10/*二叉树的二叉链表存储方式*/ ; *, *; 左右孩子指针, *;/*队列结构体定义*/ ; * ;, *; ; ;/*/ (); ( ); ( ); ( ); ( e); ( T, (*)(

8、e); ( T, (*)( e); ( T, (*)( e); ( T, (*)( e); ( T); ( T); ( T); ( T); ( *Q); 创建队列 ( *Q); 销毁队列 ( *Q); 判断队列空 ( *Q, e); 入队 ( *Q, e); 出队 () T; T = ; (1) (); (T); () ( 02); (); (n); (t n); (t n); (t *二*叉*树*的*操*作*n); (t n); (t 1: 先序创建二叉树 2: 销毁二叉树 n); (t n); (t 3: 先序遍历二叉树 4: 中序遍历二叉树 n); (t n); (t 5: 后序遍历二叉树 6: 层序遍历二叉树 n); (t n); (t 7: 叶子结点的数目 8: 测量二叉树深度 n); (t n); (t 0: 退出 n); (t n); (t B U G n); (nntt 请选择操作:); ( ) = 0; (1) 输入检测 (, ); (); (a = 0 a = ; 生成根节点 (); 构造左子树 (); 构造右子树 ;/*销毁二叉树*/ ( ) (T ) ; (); (); (T); ;/* ( ) 销毁二叉树 (T ) (); 利用递归 (T ) (); (T); ;*/ ( e) (, e); ;/*

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1