单源点最短路径算法的实现 数据结构 课程设计.docVIP

单源点最短路径算法的实现 数据结构 课程设计.doc

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

数据结构课程设计 设计说明书 单源点最短路径算法的实现 学生姓名 学 号 班 级 成 绩 指导教师 数学与计算机科学学院 2014年3月7日 课程设计任务书 2013 —2014 学年第 2 学期 专业: 学号: 姓名: 课程设计名称: 数据结构课程设计 设计题目: 单源点最短路径算法的实现 完成期限:自 2014 年 2 月 24 日至 2014 年 3 月 7 日共 2 周 设计依据、要求及主要内容(可另加附页): 最短路径算法关键先把已知最短路径顶点集(只有一个源点)和未知的顶点分开,然后依次把未知集合的顶点按照最短路径(特别强调一下是源点到该顶点的路径权重和,不仅仅是指它和父结点之间的权重,一开始就是在没有这个问题弄清楚)加入到已知结点集中。在加入时可以记录每个顶点的最短路径,也可以在加入完毕后回溯找到每个顶点的最短路径和权重。针对最短路径问题,在本系统中采用图的相关知识,以解决在实际情况中的最短路径问题,本系统中包括了建立图的存储结构、单源最短问题,这对以上几个问题采用了迪杰斯特拉算法。并为本系统设置一人性化的系统提示菜单,方便使用者的使用。 本课程设计中主要完成以下内容: 1. 建立图的存储结构。 2. 解决单源最短路径问题。 3. 实现两个顶点之间的最短路径问题。 基本要求如下: 1.程序设计界面友好; 2.设计思想阐述清晰; 3.算法流程图正确; 4.软件测试方案合理、有效。 指导教师(签字): 教研室负责人(签字): 批准日期: 年 月 日 评语: 指导老师签名: 年 月 日 课程设计评阅 摘 要 本软件以VC++作为开发平台, 设计了关于从某个单一原点到任意顶点的一个类似于 查询,咨询系统的软件。它能够准确快速的计算出从某个单一原点到任意顶点的最短路径以 及路径长度。该类软件目前广泛运用于城市交通运输系统,为人们出行带来了方便。 关键字: VC++;最短路径; 迪杰斯特拉算法; 目录 目录 - 1 - 1、课题描述 - 1 - 2、问题分析与设计思想 - 2 - 3、概要设计 - 4 - 4、详细设计 - 6 - 4.1建立图的存储结构 - 6 - 4.2单源最短路径 - 6 - 5、程序编码 - 8 - 6、程序调试和测试 - 12 - 7、总结 - 16 - 参考文献 - 16 - 1、课题描述 在城市交通网络日益发达的今天,针对人们出行关心的各种问题,利用计算机软件建 立一个交通咨询系统。在系统中采用图来构造各个城市之间的联系,图中顶点表示城市,边 表示各个城市之间的交通关系,所带权值为两个城市间的距离。 2、问题分析与设计思想 问题分析: 可以将该系统大致分为两个部分: ① 建立网络图的存储结构: 定义交通图的存储结构。邻接矩阵是表示图形中顶点之间相邻关系的矩阵。 ② 解决单源最短路径问题: 单源最短路径问题:已知有向图(带权),期望找出从某个源点S∈V到G中其余各顶点的最短路径。 设计思想: Dijkstra提出了一个按路径长度递增的次序产生最短路径的算法。首先,引进一个辅助向量D,它的每个分量D[i]表示当前所找到的从源点v到每个终点vi的最短路径长度。它的初始状态为:若v到vi有弧,则D[i]为弧上的权值,否则D[i]为无穷大。显然,长度为:D[j] = Min{D[i] | vi 属于V}?的路径就是从v出发的长度最短的一条路径。此路径为

您可能关注的文档

文档评论(0)

juhui05 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档