图的遍历
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
湖南人文科技学院计算机系
课程设计说明书
课程名称: 数据结构
课程代码:
题目: 图的遍历
年级/专业/班: 计算机科学与技术本二班
学生姓名: 苏希蒋佳军胡家瑞钟国桥学号: 07408232 07408228 07408206 07408221 指导老师: 朱素英
开题时间:
完成时间:
目录
摘要 (2)
Abstract (3)
一、引言 (4)
二、设计目的与任务 (4)
1、课程设计的目的 (4)
2、课程设计的任务 (5)
三、设计方案与实施 (5)
1、总体设计 (5)
2、详细设计 (6)
3、程序清单 (8)
4、程序调试与体会 (18)
5、运行结果 (19)
四、结论 (21)
五、致谢 (21)
六、参考文献 (21)
摘要
随着科学技术的不断发展,计算机得到了广泛的应用,计算机技术也越来越为人们所利用,在21世纪计算机技术势必将得到更大的发展。
“数据结构”是计算机程序设计的重要理论技术基础,它不仅是计算机学科的核心课程,而且已经成为其他理工专业的热门选修课。
本设计是对图进行深度和广度的遍历,所谓图的遍历是从图中某一顶点出发访遍图中其余的顶点,且使每一个顶点仅被访问一次。图的存储结构有邻接矩阵和邻接链表,程序中是利用图的邻接矩阵方式进行存储进行遍历的。图的遍历包括图的广度优先遍历与深度优先遍历。同时图的深度优先遍历有递归和非递归算法,本设计采用递归的方法。对于广度优先遍历,利用辅助队列进行了遍历。熟悉掌握了图遍历的形式和邻接矩阵。此程序是采用C语言来编写的,并在Visual C++下调试运行通过。整个程序,思路清楚,并有相应的提示信息,格式整洁,易于程序操作、运行和取得相应的结果。
关键词:图、遍历、邻接矩阵、递归
Abstract
With the continuous development of science and technology, computers have been widely used computer technology to more and more people use computer technology in the 21st century is bound to see further development.
"Data structure" is a computer program designed by an important theoretical basis of technology, it is not only a core of computer science courses, and other Science and Technology has become a popular elective professional.
This map is designed to carry out the depth and breadth of the traverse, the so-called plans are ergodicity of the map from a starting point to visit all over the map in the rest of the peak, and so that each vertex has been visited only once. Map of the structure of the storage adjacency matrix and adjacency list, the process is the use of the map of the storage adjacency matrix approach for the traverse. Figure traverse the map, including the depth and breadth-first traversal traversal priority. At the same time, plans are ergodicity priority to the depth of recursive and non-recursive algorithm, the design uses recursion. The
breadth-first traversal, using auxiliary queue for the traverse. Traverse familiar with the map and in the form of adjacent matrix. This procedure is used to write the C language and Visual C + + debugger running through the next. The whole process, clear thinking, and a corresponding message format clean, easy-to-operating procedures, operation and achieve results.
Keyword:The diagram、 time Li、 abutment matrix、 pass to return
《数据结构》课程设计
--图的遍历设计
一、引言
数据结构是一门重要的课程,在于初级阶段它要求:学会分析研究计算机加工的数据结构特性,以便为应用涉及的数据选择适当的逻辑结构、存储结构以及相应的算法。数据结构的思想应用甚广,掌握好它有利于对计算机程序的设计,当然在其他理工类课程中也是起着犹为重要的地位。
图是种较线性表和树更为负载的数据结构。在图形结构中,顶点之间的关系可以是任意的,任意两个元素之间都可能有相关的关系,这就优于了线性表。
因此,图的应用极为广泛,特别是近年来的迅速发展,已渗入到了诸如语言学、逻辑学、物理、化学、电讯工程、计算机科学以及数学的其他分支中。
本程序以实现图的深度和广度遍历,从中获取了不少宝贵的经验。
二、设计目的与任务
1、课程设计的目的
本学期我们对《数据结构》这门课程进行了学习。这门课程是一门比较抽象而又实践性非常强的课程,为了更好地理解与运用所学知识,提高动手能力,我们进行了此次课程设计实习。这次课程设计不但要求掌握《数据结构》中的各方面知识,还要求具备一定的C语言基础和编程能力。
具体说来,这次课程设计主要有三大方面目的。
一是让通过课程设计掌握《数据结构》中的知识。对于《图的遍历》这一课题来说,所要求掌握的数据结构知识主要有:图的邻接矩阵存储结构、图的深度、广度优先搜索与周游算法实现。
二是通过练习巩固并提高大家的C语言知识,并初步了解Visual C++的知识,提高其编程能力与专业水平。
三是通过这次设计掌握对课程设计报告的书写规范。