20202319 2021-2022-1 《数据结构与面向对象程序设计》实验九报告
# 20202319 2021-2022-1 《数据结构与面向对象程序设计》实验九报告
课程:《程序设计与数据结构》
班级: 2023
姓名: 吕炳翰
学号:20202319
实验教师:王志强
实验日期:2021年12月16日
必修/选修: 必修
一、实验内容
(1) 初始化:根据屏幕提示(例如:输入1为无向图,输入2为有向图)初始化无向图和有向图(可用邻接矩阵,也可用邻接表),图需要自己定义(顶点个数、边个数,建议先在草稿纸上画出图,然后再输入顶点和边数)(2分)
(2) 图的遍历:完成有向图和无向图的遍历(深度和广度优先遍历)(4分)
(3) 完成有向图的拓扑排序,并输出拓扑排序序列或者输出该图存在环(3分)
(4) 完成无向图的最小生成树(Prim算法或Kruscal算法均可),并输出(3分)
(5) 完成有向图的单源最短路径求解(迪杰斯特拉算法)(3分)
二、实验过程及结果
(1) 初始化:根据屏幕提示(例如:输入1为无向图,输入2为有向图)初始化无向图和有向图(可用邻接矩阵,也可用邻接表),图需要自己定义(顶点个数、边个数,建议先在草稿纸上画出图,然后再输入顶点和边数)(2分)
运行截图:
(2) 图的遍历:完成有向图和无向图的遍历(深度和广度优先遍历)(4分)
运行截图:
(3) 完成有向图的拓扑排序,并输出拓扑排序序列或者输出该图存在环(3分)
运行截图:
输入有环的即会出错:
(4) 完成无向图的最小生成树(Prim算法或Kruscal算法均可),并输出(3分)
这里用到了Prim算法:
运行截图:
(5) 完成有向图的单源最短路径求解(迪杰斯特拉算法)(3分)
运行截图:
三. 实验过程中遇到的问题和解决过程
- 问题:各种不能正常运行
- 问题解决方案:
不能正常运行那就是代码的问题,可以上百度去查找,也可以上课本或者通过复习ppt来查找原因,反正解决问题的方法很多,然后通过多次的调试和修改,就能把程序的问题解决了。
## 其他(感悟、思考等)
最近没啥事,总是没有什么时间去把课上教的代码去敲一遍,说白了就是懒的问题。原理都懂,但到了实际去编程的时候,非常的不熟练,还是要多多练习,积极主动写代码!才能成为一名更加出色的程序员!
## 参考资料
- [《Java程序设计与数据结构教程(第二版)》](https://book.douban.com/subject/26851579/)
- [《Java程序设计与数据结构教程(第二版)》学习指导](http://www.cnblogs.com/rocedu/p/5182332.html)
- ...