数据结构课设计报告-图的建立及输出.doc

  1. 1、本文档共40页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据结构课设计报告-图的建立及输出

PAGE PAGE II《数据结构》课程设计报告学生姓名:学 号:0000000000000000000000000000000000000000学 院:班 级:题 目:题目13 图的建立及输出指导教师: 职称: 讲 师 实验师 讲 师 2012年12月28日I-目 录 TOC \o 1-3 \h \z \u HYPERLINK \l _Toc313345058 目 录 PAGEREF _Toc313345058 \h I HYPERLINK \l _Toc313345059 一、选题背景 PAGEREF _Toc313345059 \h 1 HYPERLINK \l _Toc313345060 1.1解决问题及技术要求 PAGEREF _Toc313345060 \h 1 HYPERLINK \l _Toc313345061 1.2指导思想 1 HYPERLINK \l _Toc313345062 二、算法设计 PAGEREF _Toc313345062 \h 2 HYPERLINK \l _Toc313345063 2.1算法及模块说明 PAGEREF _Toc313345063 \h 2 HYPERLINK \l _Toc313345064 2.2主函数流程图 3 HYPERLINK \l _Toc313345066 三、程序及功能说明 4 HYPERLINK \l _Toc313345067 3.1 图的存储结构及队列存储结构…… 4 HYPERLINK \l _Toc313345067 3.2 图的生成子程序…… 4 HYPERLINK \l _Toc313345067 3.3 赋权无向图求最小生成树的算法…… 5 HYPERLINK \l _Toc313345067 3.4 以下为遍历图…… 6 HYPERLINK \l _Toc313345067 3.5 有向赋权图的最短路径算法…… 9 HYPERLINK \l _Toc313345068 四、结果分析 PAGEREF _Toc313345068 \h 12 HYPERLINK \l _Toc313345069 4.1截图及结果分析…… PAGEREF _Toc313345069 \h 12 HYPERLINK \l _Toc313345070 五、总 结 19 HYPERLINK \l _Toc313345071 六、课程设计心得体会 20 HYPERLINK \l _Toc313345072 参考文献 22 HYPERLINK \l _Toc313345073 源程序 23PAGE 1一、选题背景1.1 解决问题及技术要求我们的课题为图的建立及输出,图在很多领域中有着广泛的作用,其中我们的课题便是所有应用的基础,建立图和输出图的邻接矩阵虽然简单但是却是解决问题的源头,而且为了丰富我们的课程设计,我们又添加了,有向赋权图的最短路径的求法,无向赋权图最小生成树的求法,还有图的深度遍历和广度遍历的算法。指导思想 图是一种非线性结构,它比树型结构复杂。在图中,数据元素之间的多对多的关系,因此用于表示数据元素之间存在的复杂关系,我们称这种关系为2网状结构关系。实际上,前面讨论的线性表和树都可以看成是简单的图。图的应用十分广泛,在通信工程、社会科学、管理科学和计算机科学等领域中的很多问题否可以用图表示。二、算法设计2.1 算法及模块说明 1.模块说明:本算法的模块大致分为4个模块,其中有赋权有向图,赋权无向图,无向图以及有向图。在每一个模块中我们都给该模块输出邻接矩阵,并且在赋权有向图中我们设计了求某个顶点到某个顶点的最短路径,在赋权无向图中设计了最小生成树的算法,在无向图中设计了广度和深度搜索算法。 2.界面设计:用输出函数输出的一个框图,用清屏函数和暂停函数进行界面替换。 3.限制条件:在界面中输入时,一定要按照提醒的内容进行输入,否则会出错,由于在输出时,输出一个最大的数占用空间太大,故在邻接矩阵中用0代替了无穷。 4.关键算法:Dijkstra最短路径算法:设有向图G=(V,E),其中,V={V0,V1,… ,Vn-1},cost表示G的邻接矩阵,cost[i][j]表示有向边的Vi,Vj权值,若不存在有向边Vi,Vj,则cost[i][j]的权为无限大。设置一维数组s[0,… n-1],用于标记已找到的最短路径的顶点。广度搜索算法:首先访问初始点Vj,并将其记为已经访问过,接着访问Vi的所有未被访问的邻接点Vi1,Vi2,… ,Vit,并标记为已经访问过,然后按照Vi1

文档评论(0)

138****7331 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档