20192301 2020-2021-1 《数据结构及面向对象程序设计》实验八报告
课程:《程序设计与数据结构》
班级: 1923
姓名: 张晨宇
学号:20192301
实验教师:王志强
实验日期:2020年12月4日
必修/选修: 必修
1.实验内容
(1)用JUnit或自己编写驱动类对自己实现的LinkedBinaryTree进行测试,提交测试代码运行截图,要全屏,包含自己的学号信息
(2)基于LinkedBinaryTree,实现基于(中序,先序)序列构造唯一一棵二㕚树的功能,比如给出中序HDIBEMJNAFCKGL和先序ABDHIEJMNCFGKL,构造出附图中的树
(3)自己设计并实现一颗决策树
提交测试代码运行截图,要全屏,包含自己的学号信息
(4)输入中缀表达式,使用树将中缀表达式转换为后缀表达式,并输出后缀表达式和计算结果(如果没有用树,正常评分。如果用到了树,即使有小的问题,也酌情给满分)
2. 实验过程及结果
(1)
(2)
(3)
(4)
3. 实验过程中遇到的问题和解决过程
- 问题1:中缀后缀表达式处理混乱
- 问题1解决方案:多次重构,在纸上计算构造,整理思路,写出更简洁的代码。
- 问题2:忘记JUnit怎么用。
- 问题2解决方案:翻看之前的代码。
其他(感悟、思考等)
学会了众多实现树的方法和树的解决问题的办法,在各个方法中体会到树的应用广泛,知道了树在java中的重要性。这对于之后较大型代码构建有很大启发。