- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据结构java实验四
《数据结构(JAVA)》综合性、设计性实验成绩单
开设时间:2012学年第一学期
班级 11信管4班 学号 1.201130560415
2.201130560418
3.201130560419
4.201130560420
5.201130560424 姓名 1.刘梓明
2.王悦
3.薛泽展
4.杨海龙
5.余柏烨 实验题目
实验四 树和二叉树的基本操作 成绩 教师签名
《数据结构(JAVA)》
实 验 报 告
实验题目: 树和二叉树的基本操作
指导教师:
实验组长(姓名+学号):
组员(姓名+学号):
实验时间:
组长签名:
一、实验报告提纲? 复制一颗二叉树。
? 判断一颗二叉树是否为完全二叉树。
? 实现二叉树后根次序遍历的非递归算法。
(2)声明三叉链表表示的二叉树类,实现二叉树的基本操作以及以下操作。
① 构造一颗三叉链表表示的二叉树。
② 返回指定结点的父母结点。
③ 返回指定结点的所有祖先结点。
④ 返回两结点最近的共同祖先结点。
(3)在一颗中序线索二叉树中,实现以下操作。
① 调用求结点的前驱结点算法,按中根次序遍历一颗中序线索二叉树 。
② 按后根次序遍历中序线索二叉树。
③ 在构造二叉树时进行线索化。
④ 插入、删除操作。
3、实验步骤与结果
(1)①审题:在一棵二叉链表表示的二叉树中,实现以下操作,并说明采用哪种遍历算法,其他遍历算法是否可行。
① 输入叶子结点。
② 求二叉树中叶子结点个数。
③ 将每个结点的左子树与右子树交换。
④ 验证二叉树的性质3:n0=n2+1。
⑤ 输出值大于k的结点。
⑥ 已知先根和中根次序遍历序列构造二叉树。
⑦ 以广义表表示构造二叉树。
⑧ 判断两颗二叉树是否相等。
⑨ 求结点所在的层次。
⑩ 求一颗二叉树在后根次序遍历下第一个访问的结点。
? 复制一颗二叉树。
? 判断一颗二叉树是否为完全二叉树。
? 实现二叉树后根次序遍历的非递归算法。
②编程:这道小题需要用到几个类,分别是结点类Node,树结点类BinaryNode,顺序栈LinkedStack,顺序队列LinkedQueue,然后编写BinaryTree类,逐一实现以上功能。验证类为yanzheng。
③验证结果:
图 1
图 2
图 3
图 4
图 5
图 6
图 7
图 8
图 9
图 10
图 11
图 12
图 13
(2)①审题:(2)声明三叉链表表示的二叉树类,实现二叉树的基本操作以及以下操作。
① 构造一颗三叉链表表示的二叉树。
② 返回指定结点的父母结点。
③ 返回指定结点的所有祖先结点。
④ 返回两结点最近的共同祖先结点。
②编程:编写结点类TriNode,然后编写TriBinaryNode类实现二叉树的各个功能和方法。验证类为yanzheng2.
③验证结果:
图 14
(3)①审题:(3)在一颗中序线索二叉树中,实现以下操作。
① 调用求结点的前驱结点算法,按中根次序遍历一颗中序线索二叉树 。
② 按后根次序遍历中序线索二叉树。
③ 在构造二叉树时进行线索化。
④ 插入、删除操作。
②编程:编写结点类ThreadNode,然后编写中性线索二叉树ThreadTreee逐一实现各个功能。验证类为yanzheng3.
③验证结果:
图 15
图 16
图 17
4、源码
(1)BinaryTree类
package 实验4public class BinaryTreeT{
public BinaryNodeT root;
public BinaryTree(){
this.root=null;
}
public void preOrder(){
System.out.print(先根次序遍历二叉树:);
preOrder(root);
您可能关注的文档
最近下载
- Unit 1 Fun numbers and letters (说课稿)-2024-2025学年人教PEP版(一起)(2024)英语二年级上册.docx VIP
- 印刷成本核算方式.docx VIP
- 森林防火教学课件.ppt VIP
- 二级保密资格档案目录(24盒)优质材料.doc VIP
- 2025水利工程五大员专业题库(含答案).docx VIP
- 图书馆业务知识培训ppt课件.pptx VIP
- 传感器智能传感器与无线传感器网络技术.pptx VIP
- 中国共产党基层组织选举工作条例学习宣贯ppt课件.pptx VIP
- 游消费者行为学(第二版)孙九霞全套PPT课件.pptx
- 东芝 e-STUDIO 2000AC 2500AC 彩色复印机维修手册(拆卸安装篇).pdf VIP
文档评论(0)