《数据结构与算法》课程设计--图的遍历和生成树求解

《数据结构与算法》课程设计--图的遍历和生成树求解

ID:35625252

大小:514.00 KB

页数:26页

时间:2019-04-03

《数据结构与算法》课程设计--图的遍历和生成树求解_第1页
《数据结构与算法》课程设计--图的遍历和生成树求解_第2页
《数据结构与算法》课程设计--图的遍历和生成树求解_第3页
《数据结构与算法》课程设计--图的遍历和生成树求解_第4页
《数据结构与算法》课程设计--图的遍历和生成树求解_第5页
资源描述:

《《数据结构与算法》课程设计--图的遍历和生成树求解》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、图的遍历和生成树的求解杨皓天数学与计算机学院课程设计说明书课程名称:数据结构与算法课程设计课程代码:6014389题目:图的遍历和生成树求解实现年级/专业/班:2011级软件设计与开发1班学生姓名:学  号:312011080611207开始时间:2012年12月09日完成时间:2012年12月26日课程设计成绩:学习态度及平时成绩(30)技术水平与实际能力(20)创新(5)说明书(计算书、图纸、分析报告)撰写质量(45)总分(100)指导教师签名:年月日图的遍历和生成树的求解杨皓天目录摘要3引言41需求分析51.1任务与分析51.2测试数据52概要设计52.1ADT描述52.2程序模块结构7

2、软件结构设计:72.3 各功能模块73详细设计83.1结构体定义193.2初始化213.3插入操作(四号黑体)214调试分析215用户使用说明216测试结果23结论26图的遍历和生成树的求解杨皓天摘要《数据结构》课程主要介绍最常用的数据结构,阐明各种数据结构内在的逻辑关系,讨论其在计算机中的存储表示,以及在其上进行各种运算时的实现算法,并对算法的效率进行简单的分析和讨论。进行数据结构课程设计要达到以下目的:n了解并掌握数据结构与算法的设计方法,具备初步的独立分析和设计能力;n初步掌握软件开发过程的问题分析、系统设计、程序编码、测试等基本方法和技能;n提高综合运用所学的理论知识和方法独立分析和解

3、决问题的能力;训练用系统的观点和软件开发一般规范进行软件开发,培养软件工作者所应具备的科学的工作方法和作风。这次课程设计我们主要是应用以前学习的数据结构与面向对象程序设计知识,结合起来才完成了这个程序。因为图是一种较线形表和树更为复杂的数据结构。在线形表中,数据元素之间仅有线性关系,每个元素只有一个直接前驱和一个直接后继,并且在图形结构中,节点之间的关系可以是任意的,图中任意两个数据元素之间都可能相关。因此,本程序是采用邻接矩阵、邻接表、十字链表等多种结构存储来实现对图的存储。采用邻接矩阵即为数组表示法,邻接表和十字链表都是图的一种链式存储结构。对图的遍历分别采用了广度优先遍历和深度优先遍历。

4、关键词:计算机;图;算法。图的遍历和生成树的求解杨皓天引言很多涉及图的操作的算法都是以图的遍历操作为基础,通过遍历的演示,方便在学习中更好的理解突地遍历的过程。通过对图的深度优先遍历和广度优先遍历的演示,分别两种遍历的不同与其优缺点。我们在对一些问题进行求解时,会发现有些问题很难找到规律,或者根本无规律可寻。对于这样的问题,可以利用计算机运算速度快的特点,先搜索查找所有可能出现的情况,再根据题目条件从所有可能的情况中,删除那些不符合条件的解。在深度优先搜索算法中,是深度越大的结点越先得到扩展。如果在搜索中把算法改为按结点的层次进行搜索,本层的结点没有搜索处理完时,不能对下层结点进行处理,即深度

5、越小的结点越先得到扩展,也就是说先产生的结点先得以扩展处理,这种搜索算法称为广度优先搜索法。很多问题都可以用广度优先搜索进行处理、如翻币问题、最短路径问题等。在计算机中,有多种方法存储图的信息,由于图的结构复杂,使用广泛,一般应根据实际的应用,选择适合的表示方法。常用的图的存储结构有邻接矩阵、邻接多重表和邻接表。在实际问题当中,经常遇到这类问题,为新建的某个机构进行选址、道路交通路线、如何走完所有路线、旅游线路等一系列问题都涉及到图的知识。图是一种复杂的非线性数据结构,一个图G(Grah)由两个集合V和E构成。图存在两种遍历方式:深度优先遍历和广度优先遍历。广度优先遍历基本思路是假设从图中某顶

6、点U出发,在访问了顶点U之后依次访问U的各个未访问的领接点,然后分别从这些领接点出发依次访问他们的领接点,并使先访问的顶点的领接点先于后访问的顶点被访问。直至所有领接点被访问到。深度优先的基本思路是从某个顶点出发访问此顶点,然后依次从V的未被访问的领接点出发深度优先检索图。直至图中所有顶点都被访问到。PRIM算法—KRUSKAL算法,可以对图形进行最小生成树的求解。树型结构是一种非线性结构,它用于描述数据元素之间层次关系,如人类社会的族谱等,树型结构的应用非常广泛,磁盘文件目录结构就是一个典型的例子。图的遍历和生成树的求解杨皓天1需求分析1.1任务与分析问题描述:图的遍历和生成树求解实现图是一

7、种较线性表和树更为复杂的数据结构。在线性表中,数据元素之间仅有线性关系,每个数据元素只有一个直接前驱和一个直接后继;在树形结构中,数据元素之间有着明显的层次关系,并且每一层上的数据元素可能和下一层中多个元素(及其孩子结点)相关但只能和上一层中一个元素(即双亲结点)相关;而在图形结构中,节点之间的关系可以是任意的,图中任意两个数据元素之间都可能相关。生成树求解主要利用普利姆和克雷斯特算法求解最小生成

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。