非连通图的每一个连通部分。
2.算法的整体思路
本系统能分别用邻接矩阵存储结构和邻接表存储结构构造无向图,然后在此无向
图中能实现深度优先遍历,广度优先遍历,最小生成树和连通分量的算法。
3.工作内容
1.显示图的邻接矩阵, 图的邻接表, 深度优先遍历, 广度优先遍历, 最小生成树PRIM算法, 最小生成树KRUSCAL算法,图的连通分量。 2.当用户选择的功能错误时,系统会输出相应的提示。 3.通过图操作的实现,把一些实际生活中的具体的事物抽象出来。
关于图的遍历的数据结构课程设计
三 详细设计
1.详细设计思路及算法
图1-1 无向图
1.程序中所用变量的定义: #include <iostream> #include <malloc.h> using namespace std; #define int_max 10000 #define inf 9999 #define max 20
2.邻接矩阵的定义: typedef struct ArcCell { int adj; char *info;
}ArcCell,AdjMatrix[20][20];
关于图的遍历的数据结构课程设计
typedef struct {
char vexs[20]; AdjMatrix arcs; int vexnum,arcnum; }MGraph_L;
A 0 50 60
0 0 0 0 B 50
0 0 65 40 0 0 C 60 0 0 52 0 0 45 D 0 65 52 0 50 30 0 E 0 40 0 50 0 70 0 F 0 0 0 30 70 0 80 G 0 0 45 0 0 80 0
图1-2 邻接矩阵
3.邻接表: 表1-1 邻接表
关于图的遍历的数据结构课程设计
4.深度优先遍历:
void adjprint(algraph gra)
5.广度优先遍历:
void bfstra(algraph gra)
关于图的遍历的数据结构课程设计
6.最小生成树PRIM算法:
关于图的遍历的数据结构课程设计
课程设计(论文)
8
关于图的遍历的数据结构课程设计
7.最小生成树KRUSCAL算法:
关于图的遍历的数据结构课程设计
课程设计(论文)
10
关于图的遍历的数据结构课程设计
2.程序流程图
关于图的遍历的数据结构课程设计
四 程序的调试与运行结果说明
运行结果
图2-1 输入顶点数
图2-2 输入权值 无向图创建成功
1.
关于图的遍历的数据结构课程设计
图2-3 菜单
图2-4 邻接矩阵
图2-5 邻接表
图2-6 深广度优先遍历
关于图的遍历的数据结构课程设计
图2-7 最小生成树
图2-8 连通分量
关于图的遍历的数据结构课程设计
五.课程设计总结
课程设计是把我们所学的理论知识进行系统的总结并应用于实践的良好机会,有利于加强我们用知识理论来分析实际问题的能力,进而加强了我们对知识认识的实践度,巩固了我们的理论知识,深化了对知识的认识,并为走向社会打下一个良好的基础。
对于我们学生来讲,此次课程设计是为了让我们训练自己的实际设计能力,通过设计实践,去真正获得此项目管理和团队协作等方面的基本训练和工作经验。通过课程设计的一系列训练,我们能提高如何综合运用所学知识解决实际问题的能力,以及获得此项目管理和团队协作等等众多方面的具体经验,增强对相关课程具体内容的理解和掌握能力,培养对整体课程知识综合运用和融会贯通能力。
通过这近一个星期的数据结构课程设计实践,我学到了很多东西。本次课程设计对我来说正是一个提高自己能力的机会,我好好的抓住机会,努力做好每一步,完善每一步。自己的C语言知识和数据结构知识得到了巩固,编程能力也有了一定的提高。同时也学会了解决问题的方法。
此次课程设计也让我认识到必须培养严谨的态度。自己在编程时经常因为一些类似于“少了分号”的小错误而导致错误,不够认真细致,这给自己带来了许多麻烦。编程是一件十分严谨的事情,容不得马虎。所以在今后自己一定要培养严谨的态度。我想这不仅是对于程序设计,做任何事都应如此。
在实践过程中,我和组员分工合作,勇于提出问题,解决难题,在实践中,我遇到了许多困难,但都一一克服了。最终我圆满的完成此次课程设计,学到了很多东西。同时,程序还存在着一些缺陷,就是不能输出原图,存在一些局限性,不过我会继续努力思考,完善程序,做到最好。
此次试验,老师对我的指导是至关重要的,在此我非常感谢老师,从她那我学到了很多有关c语言的知识,为以后的学习打下了一定的基础。
总的来说,本次课程设计,不仅我的知识面有所提高,另外我的综合素质也有所提高,,比如说:团队精神、提问能力、思考能力等等。这次课程设计为我以后更好的学习和使用c语言打下了基础。
关于图的遍历的数据结构课程设计
参考文献
[1]数据结构—使用C语言(第3版)朱战立 编,西安交通大学出版社。
[2] Visual C++程序设计──基础与实例分析.北京:清华大学出版社,2004
附录A 原程序清单
#include <iostream> #include <malloc.h> using namespace std; #define int_max 10000 #define inf 9999 #define max 20
搜索“diyifanwen.net”或“第一范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,第一范文网,提供最新人文社科图的遍历 课程设计(4)全文阅读和word下载服务。
相关推荐: