没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论









摘要
在一周的数据结构课程设计时间里,设计完成了校园导航程序,主要实现求出校园各点的
最短路程,并向用户推荐最佳路径。校园中各点由可行的路径相通,构成一个有权无向网,在
实现过程中,使用邻接矩阵存储网的信息。然后采用 Floyd 算法求出所有点与其它点之间的最
短距离及路径,将其存储在两个数组中;再通过一个 Search 方法,提示用户输入起点和终点,
并调用输出最短路径和距离。程序结构清晰,与用户的交互良好。
编译环境:Microsoft Visual C++6.0 和 Dev C++
关键词:邻接矩阵,最短路径,Floyd 算法

一、 需求分析........................................................................................................................................1
1. 设计题目.......................................................................................................................................1
校园导航:..............................................................................................................................................1
2. 设计要求.......................................................................................................................................1
3. 设计目的.......................................................................................................................................1
二、 设计说明........................................................................................................................................1
1. 算法描述.......................................................................................................................................1
2.算法设计........................................................................................................................................2
三、 算法实现.......................................................................................................................................4
1. 建立邻接矩阵...............................................................................................................................4
2. Floyd 算法.....................................................................................................................................4
3. 显示最短路径...............................................................................................................................5
4. 运行结果.......................................................................................................................................6
5. 遇到的问题及解决方法...............................................................................................................6
四、 设计总结........................................................................................................................................6
五、 参考文献........................................................................................................................................7
六、 附录................................................................................................................................................7
1

一、需求分析
1. 设计题目
校园导航:
设计你的学校的平面图,至少包括 10 个以上的场所,每两个场所间可以有不同的路,且
路长也可能不同,找出从某个场所到达另一场所的最佳路径(最短路径)。
用 Dijkstra 或 Floyd 算法实现,用邻接矩阵存储图。
2. 设计要求
1. 了解数据结构及其分类、数据结构与算法的密切关系;
2. 熟悉各种基本数据结构及其操作,学会根据实际问题来选择数据结构;
3. 掌握设计算法的步骤和分析方法;
4. 掌握数据结构在排序和查找等常用算法中的应用。
5. 独立完成;
3. 设计目的
本次课程设计的主要目的是综合运用所学的数据结构知识解决一个比较实际问题,侧重对链
表、数组、字符串、图、树等相关内容的综合应用,使同学们能进一步熟悉掌握数据结构的基
础知识,进一步提升自己的解决问题和编程调试能力,为后续专业课程的学习打下良好的基础。
二、设计说明
1.算法描述
将校园各场所作为点,各点之间存在可行路径相通,构造一个有权无向网,将两点之间的
路径距离存储在一个二维数组中,没有路径直接相通则距离为无限大,程序中用一个 int 类型
的最大值 32767 表示;然后采用 Floyd 算法求出所有点与其它点之间的最短距离及路径,将其
存储在两个数组中;再通过一个 Search 方法,提示用户输入起点和终点,并调用输出最短路径
和距离。
程序中采用的 12 个校园场所为:
1.东门
2.图书馆
3.主教学楼
4.办公楼
1
剩余12页未读,继续阅读

lincolnDouble
- 粉丝: 0
- 资源: 1
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


安全验证
文档复制为VIP权益,开通VIP直接复制

- 1
- 2
前往页