20182330 2019-2020-1 《数据结构与面向对象程序设计》实验八报告

20182330 2019-2020-1 《数据结构与面向对象程序设计》实验八报告

课程:《程序设计与数据结构》
班级: 1823
姓名: 魏冰妍
学号:20182330
实验教师:王志强
实验日期:2019年11月11日
必修/选修: 必修

1.实验内容

  1. 参考教材PP16.1,完成链树LinkedBinaryTree的实现(getRight,contains,toString,preorder,postorder)用JUnit或自己编写驱动类对自己实现的LinkedBinaryTree进行测试,提交测试代码运行截图,要全屏,包含自己的学号信息课下把代码推送到代码托管平台
  2. 基于LinkedBinaryTree,实现基于(中序,先序)序列构造唯一一棵二?树的功能,比如给出中序HDIBEMJNAFCKGL和后序ABDHIEJMNCFGKL,构造出附图中的树。用JUnit或自己编写驱动类对自己实现的功能进行测试,提交测试代码运行截图,要全屏,包含自己的学号信息。课下把代码推送到代码托管平台
  3. 自己设计并实现一颗决策树。提交测试代码运行截图,要全屏,包含自己的学号信息课下把代码推送到代码托管平台
  4. 输入中缀表达式,使用树将中缀表达式转换为后缀表达式,并输出后缀表达式和计算结果(如果没有用树,正常评分。如果用到了树,即使有小的问题,也酌情给满分。提交测试代码运行截图,要全屏,包含自己的学号信息

2. 实验过程及结果

实验一

查找元素并进行前序后序排列。下图调用之前的LinkedBinaryTree生成了一棵树。

实验二

用前缀和后缀表达式画出一棵树。主要思想就是定一个,找一个,二者相统一。

实验三

先自己模拟出一棵决策树,然后根据书上的decidetree改编自己的决策树。

实验四

中缀转后缀与之前做过的后缀转前缀类似,不同的是加入了符号运算这一环节。

3. 实验过程中遇到的问题和解决过程

  • 问题1:打开Idea之后module里的java文件全部变成file型文件,无法运行。如图所示

(图中文件名后更改为实验八)

  • 问题1解决方案:通过找同学和上网查找,发现这一类问题还不少。

(1)java文件全部变成file型文件,

  • 项目结构需要有一个target目录,需要一个src目录

(2)module文件变成了普通文件夹。就比如这样,带蓝色方块的就是module文件夹。其实二者可以相互转化,

  1. 右击project,选择第二项“add framework support”,然后从对话框左侧选择“Maven”,OK即可
  2. 设置maven仓库地址:右击file,选择settings,找到maven,设置maven home directory以及后面两项。(图片大小超过限制。。我就不传图了)
  3. OK完成,等加载刷新。

(3)还有一种情况是导入文件的时候,如何导成module文件。

  1. 点击file->project structure..->Modules。点击右上角+加号 -》import Modules
  2. 选择你的项目,点击确定。在如下页面选择import modules from external model。选择maven,然后一直点击下一步next最后点击完成finished
  3. 导入之后如下,如果没有显示项目,加入点击Add Content Root加入项目路径。然后点击OK , 主界面正常显示项目结构
  4. 导入之后如下,如果没有显示项目,加入点击Add Content Root加入项目路径。然后点击OK , 主界面正常显示项目结构
  • 问题2:又出现了找不到主类的问题
  • 问题2解决方案:上网找到一个神仙方法——清除缓存并重启!

其他(感悟、思考等)

本次实验的难度不高,但是能看到调用了非常多之前写过的方法,层层调用环环相扣,如果之前的代码没有弄好,就是大工程了。而且树的理解很重要,必要的时候可以先在纸上拟出思路,再进行程序设计。

参考资料

原文地址:https://www.cnblogs.com/weiii/p/11875656.html

时间: 2024-10-08 03:13:48

20182330 2019-2020-1 《数据结构与面向对象程序设计》实验八报告的相关文章

20182330 2019-2020-1 《数据结构与面向对象程序设计》实验二报告

20182330 2019-2020-1 <数据结构与面向对象程序设计>实验二报告 课程:<程序设计与数据结构> 班级: 1823 姓名: 魏冰妍 学号:20182330 实验教师:王志强 实验日期:2019年9月16日 必修/选修: 必修 1.实验内容 编写简单的计算器,完成加减乘除模运算. 要求从键盘输入两个数,使用判定语句选择一种操作,计算结果后输出,然后使用判定和循环语句选择继续计算还是退出. 编写测试代码,测试验证. 2. 实验过程及结果 编写简单计算器,借鉴c语言语法

20182330 2019-2020-1 《数据结构与面向对象程序设计》实验七报告

20182330 2019-2020-1 <数据结构与面向对象程序设计>实验七报告 课程:<程序设计与数据结构> 班级: 1823 姓名: 魏冰妍 学号:20182330 实验教师:王志强 实验日期:2019年11月4日 必修/选修: 必修 1.实验内容 定义一个Searching和Sorting类,并在类中实现linearSearch,SelectionSort方法,最后完成测试. 要求不少于10个测试用例,提交测试用例设计情况(正常,异常,边界,正序,逆序),用例数据中要包含自

20182330 2019-2020-1 《数据结构与面向对象程序设计》实验九报告

20182330 2019-2020-1 <数据结构与面向对象程序设计>实验九报告 课程:<程序设计与数据结构> 班级: 1823 姓名: 魏冰妍 学号:20182330 实验教师:王志强 实验日期:2019年12月2日 必修/选修: 必修 1.实验内容 完成图的综合实践 (1)初始化:根据屏幕提示(例如:输入1为无向图,输入2为有向图)初始化无向图和有向图(可用邻接矩阵,也可用邻接表),图需要自己定义(顶点个数.边个数,建议先在草稿纸上画出图,然后再输入顶点和边数) (2)图的遍

《数据结构与面向对象程序设计》第1周学习总结

学号 2019-2020-2314 <数据结构与面向对象程序设计>第1周学习总结 教材学习内容总结 1.计算机系统是由软硬件组成的 2.java程序的结构组成(注释.标识符和保留字等) 注:java是大小写敏感的,大写和小写是有区别的 3.程序开发所包含的内容(程序设计语言的等级.编辑器.编译程序.解释程序.开发环境和语法语义) 4.在开发软件的过程中遇到问题时的解决步骤:理解问题.设计方案.考虑方案的选择并优化方案.实现方案.测试方案并修改存在的任何问题. 教材学习中的问题和解决过程 问题1

20182327 2019-2020-1 《数据结构与面向对象程序设计》实验二报告

20182327 2019-2020-1 <数据结构与面向对象程序设计>实验二报告 课程:<程序设计与数据结构> 班级: 1823 姓名:赵天昊 学号:20182327 实验教师:王志强 实验日期:2019年9月16日 必修/选修: 必修 1.实验内容 (1) 编写简单的计算器,完成加减乘除模运算. (2) 要求从键盘输入两个数,使用判定语句选择一种操作,计算结果后输出,然后使用判定和循环语句选择继续计算还是退出. (3) 编写测试代码,测试验证. 2. 实验过程及结果 不多说,上

20182319《数据结构与面向对象程序设计》实验二报告

20182319 2019-2020-1 <数据结构与面向对象程序设计>实验二报告 课程:<程序设计与数据结构> 班级: 1823 姓名: 彭淼迪 学号:20182319 实验教师:王志强 实验日期:2019年9月16日 必修/选修: 必修 1.实验内容 (1) 编写简单的计算器,完成加减乘除模运算. (2) 要求从键盘输入两个数,使用判定语句选择一种操作,计算结果后输出,然后使用判定和循环语句选择继续计算还是退出. (3) 编写测试代码,用规定方法测试验证. 2. 实验过程及结果

# 20182331 2019-2020-1 《数据结构与面向对象程序设计》实验二报告

20182331 2019-2020-1 <数据结构与面向对象程序设计>实验二报告 课程:<程序设计与数据结构> 班级: 1823 姓名: 高宽让 学号:20182331 实验教师:王志强 实验日期:2019年9月16日 必修/选修: 必修 1.实验内容 (1) 编写简单的计算器,完成加减乘除模运算. (2) 要求从键盘输入两个数,使用判定语句选择一种操作,计算结果后输出,然后使用判定和循环语句选择继续计算还是退出. (3) 编写测试代码,测试验证.(https://www.cnb

20182311 2019-2020-1 《数据结构与面向对象程序设计》实验二报告

20182311 2019-2020-1 <数据结构与面向对象程序设计>实验二报告 课程:<程序设计与数据结构> 班级: 1823 姓名: 冷冲 学号:20182311 实验教师:王志强 实验日期:2019年9月16日 必修/选修: 必修 1.实验内容 (1) 编写简单的计算器,完成加减乘除模运算. (2) 要求从键盘输入两个数,使用判定语句选择一种操作,计算结果后输出,然后使用判定和循环语句选择继续计算还是退出. (3) 编写测试代码,测试验证.(https://www.cnbl

20182333 2019-2020-1 《数据结构与面向对象程序设计》实验2报告

20182333 2019-2020-1 <数据结构与面向对象程序设计>实验2报告 课程:<程序设计与数据结构> 班级: 1823 姓名:钱佳禹 学号:20182333 实验教师:王志强 实验日期:2019年9月9日 必修/选修: 必修 1.实验内容 (1) 编写简单的计算器,完成加减乘除模运算. (2) 要求从键盘输入两个数,使用判定语句选择一种操作,计算结果后输出,然后使用判定和循环语句选择继续计算还是退出. (3) 编写测试代码,测试验证.(https://www.cnblo