文档详情

单元点最短路径算法的实现.课程设计.doc

发布:2019-01-01约8.49千字共21页下载文档
文本预览下载声明
读万卷书 行万里路 数据结构课程设计 设计说明书 单源点最短路径算法的实现 学生姓名 学号 班级 成绩 指导教师 数学与计算机科学学院 2014年 3月 7日 课程设计任务书 2014—2015学年第1学期 专业: 学号: 姓名: 课程设计名称: 数据结构课程设计 设 计 题 目: 单源点最短路径算法的实现 完 成 期 限:自 2014 年 12 月 22 日至 2015 年 1 月 2 日共 2 周 设计内容及要求: 最短路径问题已经被应用到GIS、GPS等信息管理系统中,为人们生活带来了很大便利。它属于图结构问题,其解决方法也有不少(如Dijkstra、 A-star)。单源点最短路径问题解决的是既定起点的情况下,寻求该点到图中其它顶点的最短路径。请用C/C++语言的结构体、指针、数据结构等基础知识,编写程序实现图的结构定义、图的存储,以及求解单源点最短路径。 设计过程以及写作要求如下: (1)要针对本题目,认真研究所设计的内容,用简明扼要的语言描述课题,给出课题的基本内容及要求; (2)根据数据结构的相关知识给出实现建立任意m个顶点n条边的图算法、按照用户给定的源点和目标点,求出它们间的最短路径(打印出来)算法的基本策略及思路; (3)给出较为详尽数据结构与算法,算法可以用流程图、伪代码等描述手段进行描述; (4)给出一个完整的算法实现的C/C++程序,算法中的各子算法要力求用函数来实现; (5)对编写的程序要进行详尽的测试分析; (6)对本课题的设计工作要进行一个完整深刻的总结。 最终设计成果形式为: 设计软件一套; 撰写一份课程设计说明书一份,打印并装订成册。 指导教师(签字): 教研室主任(签字): 批准日期: 年 月 日 摘要 本系统以VC++作为软件开发环境,C语言作为程序开发语言,邻接矩阵作为存储结构,设计与实现了最短路径运算。该系统实现了有向图的存储、最短路径的运算等主要功能。依照该系统可以解决生活中许多问题,比如交通路线的选择,工程时间的预算等等,让人们可以做出合理的选择。本系统通过分析课题的背景、意义、要求,分别从课题描述、逻辑设计、算法设计、调试与测试等各个方面详细介绍了系统的设计与实现过程,最后对系统的完成情况进行了总结。界面清晰,操作简单,易于用户接受。 关键词:VC++;邻接矩阵; 最短路径 目 录 TOC \o 1-3 \h \z \u HYPERLINK \l _Toc24595 1课题描述 PAGEREF _Toc24595 1 HYPERLINK \l _Toc22146 2 问题分析与任务定义 PAGEREF _Toc22146 2 HYPERLINK \l _Toc30673 2.1问题分析 PAGEREF _Toc30673 2 HYPERLINK \l _Toc28223 2.2任务定义 PAGEREF _Toc28223 2 HYPERLINK \l _Toc853 3 算法设计 PAGEREF _Toc853 3 HYPERLINK \l _Toc1189 3.1 图的邻接矩阵的存储结构 PAGEREF _Toc1189 3 HYPERLINK \l _Toc490 3.2 Dijkstra算法思想 PAGEREF _Toc490 4 HYPERLINK \l _Toc32175 4 系统逻辑设计 PAGEREF _Toc32175 5 HYPERLINK \l _Toc2579 4.1 主函数流程图如图4.1所示 PAGEREF _Toc2579 5 HYPERLINK \l _Toc5755 4.2 Create函数流程图如图4.2所示 PAGEREF _Toc5755 6 HYPERLINK \l _Toc2682 4.3 Dijkstra函数流程图如图4.3所示 PAGEREF _Toc2682 8 HYPERLINK \l _Toc6407 5 源代码 PAGEREF _Toc6407 11 HYPERLINK \l
显示全部
相似文档