数据结构课设-校园导游
【问题描述】设计一个校园导游程序,为来访的客人提供各种信息查询服务。【基本要求】(1) 设计你所在学校的校园平面图,所含景点不少于10个.以图中顶点表示校内各景点,存放景点名称、代号、简介 等信息;以边表示路径,存放路径长度等相关信息。(2) 为来访客人提供图中任意景点相关信息的查询。(3) 为来访客人提供图中任意景点的问路查询,即查询任意两个景点之间的一条最短的简单路径。【数据结构】dt{景点编
项目1:校园导游咨询
【问题描述】
设计一个校园导游程序,为来访的客人提供各种信息查询服务。
【基本要求】
(1) 设计你所在学校的校园平面图,所含景点不少于10个.以图中顶点表示校内各景点,存放景点名称、代号、简介 等信息;以边表示路径,存放路径长度等相关信息。
(2) 为来访客人提供图中任意景点相关信息的查询。
(3) 为来访客人提供图中任意景点的问路查询,即查询任意两个景点之间的一条最短的简单路径。
【数据结构】
dt
{
景点编号;(int)
景点名称;(String)
景点描述;(String)
}
【景点选择】(以江苏科技大学地图为例)
文理大楼、东苑、西操场、西苑、北苑、图书馆、梦溪园、文体中心、东操场、杨帆广场
初始化信息后将所有的景点信息存储到array数组中
【拓扑图如下】
【无向图实现】
用二维数组表示无向图
graph[i][j]代表第i个景点和第j个景点之间的距离;若距离为INF,则代表无限大,两者之间不能达到
【无向图和dt建立连接】
通过无向图的下标=景点id-1的关系建立连接
【方法实现】
查询信息-首先通过菜单将所有的景点信息和编号呈现给用户,让用户输入景点的编号,遍历访问数组array比较输入的id和数字每个元素的id,找到对应的景点后打印输出
查询路径-通过键盘输入当前景点和目标景点,两者的数值-1对应无向图矩阵的下标。用dijkstra算法实现
【详情B站搜索-最短路径算法】
通过此算法得到当前景点到所有景点的最短距离,在代码实现中,创建新的数组(list1)保存节点访问顺序;访问整个保存结点访问的数组list1一直到数组元素为目标景点,进而得到最短路径的长度和路线

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐
所有评论(0)