20202316 2021-2022-1 《数据结构与面向对象程序设计》实验七报告
课程:《程序设计与数据结构》
班级: 2023
姓名: 饶坤
学号:20202316
实验教师:王志强
实验日期:2021年11月4日
必修/选修: 必修
一、实验内容
1.定义一个Searching和Sorting类,并在类中实现linearSearch,SelectionSort方法,最后完成测试。要求不少于10个测试用例,提交测试用例设计情况(正常,异常,边界,正序,逆序),用例数据中要包含自己学号的后四位提交运行结果图。
2.重构你的代码把Sorting.java Searching.java放入 cn.edu.besti.cs2023.(姓名首字母+四位学号) 包中(例如:cn.edu.besti.cs1823.G2301)把测试代码放test包中重新编译,运行代码,提交编译,运行的截图(IDEA,命令行两种)
3.参考http://www.cnblogs.com/maybe2030/p/4715035.html ,学习各种查找算法并在Searching中补充查找算法并测试提交运行结果截图
4.实现排序方法等(至少3个)测试实现的算法(正常,异常,边界)提交运行结果截图(如果编写多个排序算法,即使其中三个排序程序有瑕疵,也可以酌情得满分)
5.编写Android程序对实现各种查找与排序算法进行测试提交运行结果截图推送代码到码云(选做,额外加分)
二、实验过程及结果
1.定义一个Searching和Sorting类,并在类中实现linearSearch,SelectionSort方法,最后完成测试。
要求不少于10个测试用例,提交测试用例设计情况(正常,异常,边界,正序,逆序),用例数据中要包含自己学号的后四位提交运行结果图。
2.重构你的代码把Sorting.java Searching.java放入 cn.edu.besti.cs2023.(姓名首字母+四位学号) 包中(例如:cn.edu.besti.cs1823.G2301)
把测试代码放test包中
重新编译,运行代码,提交编译,运行的截图(IDEA,命令行两种)
命令行截图:
3.参考http://www.cnblogs.com/maybe2030/p/4715035.html ,学习各种查找算法并在Searching中补充查找算法并测试提交运行结果截图
折半查询
链地址查询:
分块
线性
斐波那契
二叉树
测试运行
4.实现排序方法等(至少3个)
测试实现的算法(正常,异常,边界)
提交运行结果截图(如果编写多个排序算法,即使其中三个排序程序有瑕疵,也可以酌情得满分)
选择排序
插入排序
冒泡排序
希尔排序
堆排序
二叉树排序
运行截图
5.编写Android程序对实现各种查找与排序算法进行测试提交运行结果截图推送代码到码云(选做,额外加分)
3. 实验过程中遇到的问题和解决过程
- 问题1:不知道如何重构函数并放入包里面
- 问题解决方案:我问了同学,从而成功重构并放入包里面
-问题2:不知如何构造二叉树。
-问题解决方案:我在网上查找相关的资料和询问同学求助同学帮助,从而编写出了二叉树排序查找树
实验感悟
java的难度还是超出了我的想象,越学习越发现有许多的不会的知识点,还是得多看书,多敲代码。遇见不会得知识点得多花时间去弄明白他,实在不会可以求助老师和同学,直到把题目给弄明白为止,这样才能真正学到知识。
## 参考资料
- [《Java程序设计与数据结构教程(第二版)》](https://book.douban.com/subject/26851579/)
- [《Java程序设计与数据结构教程(第二版)》学习指导](http://www.cnblogs.com/rocedu/p/5182332.html)
- ...