在邻接表存储结构上实现图的遍历0.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
在邻接表存储结构上实现图的遍历0

大 连 科 技 学 院 数据结构课程设计 题 目 在邻接表存储结构上实现图的遍历 学生姓名 李楠 专业班级 网络工程13-1 指导教师 郭文书 职 称   副教授 所在单位 信息科学系 教学部主任 王立娟 完成日期 2015年1月11日 课程设计报告单 学号 23 姓名 李楠 专业班级 网络工程13-1 考 核 项 目 评分 备注 1 平时工作态度及遵守纪律情况      (10分) 2 掌握基本理论、关键知识、基本技能的程度和阅读参考资料的水平     (10分) 3 独立工作能力、综合运用所学知识分析和解决问题能力及实际工作能力提高的程度     (20分) 4 完成课程设计说明书及软件的情况与水平(小组分工情况、规范性、整洁清楚、叙述完整性、思路清晰程度、工作量及实际运行情况和创新性)     (60分) 总评成绩 综 合 评 定:       (优、良、中、及格、不及格) 指导教师签字:       2015年1月11日 数据结构课程设计任务书 一、任务及要求: 设计(研究)任务和要求 研究内容:在邻接表存储结构上实现图的遍历 任务和要求: (1)学习数据结构基础知识,掌握数据结构典型的算法的使用。 (2)对指导教师下达的题目进行系统分析。 (3)))结合数据结构课程中的基本理论和基本逻辑结构合理地选择相应的存储结构并能设计出解决问题的有效算法提高程序设计和调试能力学生通过上机实习验证自己设计的算法的正确性学会有效利用基本调试方法迅速找出程序代码中的错误并且修改1 需求分析 1 1.1 系统概述 1 1.2 系统运行环境 1 1.3 功能需求描述 1 2 总体设计 2 2.1 开发与设计的总体思想 2 2.2 系统模块结构 2 2.3 系统总体流程 3 3 详细设计 4 3.1 数据类型 4 3.2 邻接表创建模块 5 3.3 邻接表输出模块 6 3.4 输出DFS遍历模块 8 3.5 输出BFS遍历模块 9 4 系统测试 11 总 结 13 参考文献 14 附 录 15 1 需求分析 1.1 系统概述 邻接表是图的一种存储结构。邻接表中的每个顶点表结点应包含两个区域:一个是顶点域,用来存放顶点的信息;另一个是指针域,用来存放与顶点相关联的所有边链接成的边表头指针。图的遍历是从图的某一顶点出发,沿着某条搜索路径对图的每个顶点都访问一次且仅访问一次。根据搜索路径方向的不同,有两种常用的图的遍历方法:深度优先搜索和广度优先搜索。 1.2 系统运行环境 1. 硬件环境 处理器: Inter Pentium 166 MX 或更高 内存: 32M 硬盘空间:1GB 显卡: SVGA显示适配器 2. 软件环境 操作系统:Windows 98/ME/2000/XP/WIN7 开发语言:Visual C++ 1.3 功能需求描述 图是一种较线性表和树更为复杂的数据结构.图形结构中,结点之间的关系可以是任意的,图中任意两个数据元素之间都可能相关.因此,在研究有关图的问题时,要考虑图中每个顶点的信息,访问图中的各顶点,而访问图中各顶点的操作过程就是图的遍历.2 总体设计 2.1 开发与设计的总体思想 由于图形结构比树形结构逻辑特征更复杂,所以图的遍历比树的遍历也要复杂得多。因为图中人一个顶点都可能与其余顶点相邻接,故在访问了某个顶点之后,可能顺着某条搜索路径有回到了该顶点上。为了避免某一顶点被重复访问,在图的遍历过程中,必须采取某种方法来记录每个顶点是否被访问过。为此,可以设一个辅助数组,数组的初始值均设为“假”,一旦某个顶点被访问过,则将辅助数组中相应的值置为“真”。 所以要根据搜索路径方向的不同,则有两种常用的图的遍历方法:深度优先搜索遍历和广度优先搜索遍历。 2.2 系统模块结构 图2-1 系统模块结构图 2.3 系统总体流程 图2-2 系统总流程图 3 详细设计 3.1 数据类型 本系统中主要采用结构数据类型实现图的深度和广度两种遍历。本系统中定义typedef char VexType结构体类型用于定义图的顶点,typedef int AdjType;结构体类型用于定义权值,ypedef int DataType结构体类型用于定义队列。格式如下: typedef char VexType; typedef int AdjType; typedef int DataType; typedef struct { Da

文档评论(0)

153****9595 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档