# 20182304 实验八 《数据结构与面向对象程序设计》实验报告
Posted acgacg
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了# 20182304 实验八 《数据结构与面向对象程序设计》实验报告相关的知识,希望对你有一定的参考价值。
20182304 实验八 《数据结构与面向对象程序设计》实验报告
课程:《程序设计与数据结构》
班级: 1823
姓名: 张子正
学号:20182304
实验教师:王志强
实验日期:2019年11月11日
必修/选修: 必修
1.实验内容
- 参考教材PP16.1,完成链树LinkedBinaryTree的实现(getRight,contains,toString,preorder,postorder)
用JUnit或自己编写驱动类对自己实现的LinkedBinaryTree进行测试,提交测试代码运行截图,要全屏,包含自己的学号信息
课下把代码推送到代码托管平台 - 基于LinkedBinaryTree,实现基于(中序,先序)序列构造唯一一棵二?树的功能,比如给出中序HDIBEMJNAFCKGL和后序ABDHIEJMNCFGKL,构造出附图中的树
用JUnit或自己编写驱动类对自己实现的功能进行测试,提交测试代码运行截图,要全屏,包含自己的学号信息
课下把代码推送到代码托管平台 - 自己设计并实现一颗决策树
提交测试代码运行截图,要全屏,包含自己的学号信息
课下把代码推送到代码托管平台 - 输入中缀表达式,使用树将中缀表达式转换为后缀表达式,并输出后缀表达式和计算结果(如果没有用树,正常评分。如果用到了树,即使有小的问题,也酌情给满分)
提交测试代码运行截图,要全屏,包含自己的学号信息
2. 实验过程及结果
- 1.本来以为简单按照书上代码补全方法就可以了,但是书上代码有很多遗漏的地方,要求我们自己编写很多类,一些类,比如
tostring
十分复杂,编程时造成了很大困扰
3.决策树的实现是不难的,上交书上例题后,将相应字符串做一个简单的修改就可以了
4.如果不使用树来做,那么思路是不难的。我也尝试在网上寻找使用树解决的方法,却与我自己的代码结合不起来,频频报错,最终只能放弃
3. 实验过程中遇到的问题和解决过程
- 问题1:在进行TDD实验时,在解决了娄老师的TestCase变红问题后,@test依然是红色的
- 问题1解决方案:只使用了import junit.framework.TestCase,没有使用importorg.junit.Test,缺少了导入路径,添加之后恢复正常
- 问题2:TDD实验时,在点击小灯泡生成.test空文件后,并没有生成现成的绿色文件夹
- 问题2解决方案:通过百度,从自己的主目录下,右键新建Directory命名文件名为test,再右键单击test,在make directinon as 栏中选择Test source root,该文件夹就成功变成了test文件
- 问题3:在编写第四个作业时,如果我想使用
(object obj)
传参时,判断两个复数是否相等的测试程序一直错误 - 问题三解决方案:我现在对参数为object类型的使用还没有很好的理解,只能先把可以运行的结果贴出来,有待于进一步研究学习
public boolean equals(Object obj) {
if (this == obj)
return true;
else
return false;
}
其他(感悟、思考等)
- 我们敲代码时需要足够的严谨细致,只要有一点标红的地方程序都是无法正常运行的
- 要勤于翻阅课本,熟悉课本内容,很多实验内容如UML的语法就写在课本上,我忽视了这一点导致实验五出现了问题
参考资料
以上是关于# 20182304 实验八 《数据结构与面向对象程序设计》实验报告的主要内容,如果未能解决你的问题,请参考以下文章
20182304 《数据结构与面向对象程序设计》第七八周学习总结
20182330 2019-2020-1 《数据结构与面向对象程序设计》实验八报告