20202326 2021-2022-1 《图》实验九报告

# 20202326 2021-2022-1 《图》实验九报告

课程:《程序设计与数据结构》
班级: 2023
姓名: 张修齐
学号:20202326
实验教师:王志强
实验日期:2021年12月19日
必修/选修: 必修

实验内容:

(1) 初始化:根据屏幕提示(例如:输入1为无向图,输入2为有向图)初始化无向图和有向图(可用邻接矩阵,也可用邻接表),图需要自己定义(顶点个数、边个数,建议先在草稿纸上画出图,然后再输入顶点和边数)(2分)
(2) 图的遍历:完成有向图和无向图的遍历(深度和广度优先遍历)(4分)
(3) 完成有向图的拓扑排序,并输出拓扑排序序列或者输出该图存在环(3分)
(4) 完成无向图的最小生成树(Prim算法或Kruscal算法均可),并输出(3分)
(5) 完成有向图的单源最短路径求解(迪杰斯特拉算法)(3分)

 

(1)和(2)图的生成遍历、

 

 (邻接矩阵下边为深度优先遍历)

 

(3)、拓扑排序

 

 

 

(4)、Prime算法进行最小生成树生成

 

 

 

 

 (5)迪杰斯特拉算法:

 

 

 

 

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

问题1:关于在图的遍历时一直调试不出正确结果

解决方式:前一天还是对的,第二天就编辑不成功,后来又自己一点一带你改,终于还是对了,还有遍历的时候,数组溢出的问题时有发生,主要是由于用来计数的变量在遇到需要回溯的地方时计数的变量不好选择,

问题2:在临阶矩阵输出时效果并不好

解决办法:用\t可以有效解决格式问题

四、感悟

这次的实验比以往都要难,特别是在图的生成遍历还有各种复杂的算法,平时讲的时候很好理解,回来并没有第一时间自己先用代码来实现,把代码整理出来,导致最后编写程序的时候一直有问题,很多地方断断续续的

并没有真正理解,有很多遗漏的问题,后面还是要参考网上的代码进行重新学习。希望下次继续加油。

 

 

posted @ 2021-12-23 23:35  20202326张修齐  阅读(46)  评论(0编辑  收藏  举报