搜档网
当前位置:搜档网 › 校园导航系统数据结构程序设计

校园导航系统数据结构程序设计

打造一流校园导航系统

现代化的大学校园中,校园导航系统已成为学生、教职工和游客

出行的必要工具。然而若要打造一流的校园导航系统,需要合适的数

据结构程序设计。以下为必要的步骤:

1.数据采集

首先,需要采集校园内的各种信息,例如校园建筑的地理位置、

各车站位置及时刻表、校内活动及其地理位置等。收集这些信息需要

精准的测量和标注。一旦数据整理完毕,它们会被组织成一张校园地图,数据需严谨而准确。

2.程序设计及程序优化

接下来,需要开发正确的算法,和高性能和精度的数据结构。程

序设计和优化是至关重要的,因为程序设计不好可能会形成数据出错。优化程序可在保持数据精度的同时,提高数据速度和准确性。程序应

拥有简洁、准确、可扩展和可维护的代码,以便后期能够进行 push

和更新。

3.用户体验

数据采集和程序设计完成后,将会合并并制作出校园导航系统。

系统需要对不同用户群体进行分类,例如提供不同的搜索机制、路线

规划、景点推荐等。校园导航系统还应该提供简介、操作手册或者介

绍视频等,以方便新用户在较短时间内学会使用系统。

打造一流校园导航系统需要不断地完善和改进。有了精准可信的数据、程序设计和优化的算法以及良好的用户体验,校园导航系统才会成为一流的高质量校园导航器。

校园导航系统

目录 摘要 (2) 正文 (3) 1设计目的及要求 (3) 2 设计原理 (3) 2.1 C/C++语言简介 (3) 2.2 开发环境 (3) 2.3系统模块分析 (4) 3设计内容 (4) 3.1方案设计与论证 (4) 3.2数据结构描述与定义 (5) 3.3主要函数的说明 (6) 3.4设计结果验证 (11) 总结与致谢 (14) 参考文献 (15) 附录 (16)

摘要 与传统的地图相比较,地理信息系统有着不可比拟的优势,信息量大,切换方便,可扩展性强。校园导航问题是基于校园中的不同的景点,从陌生人的角度,为来往的客人提供校园景点相关信息的查询以及为来往的客人提供校园中任意景点的问路查询,以便客人能用最短的时间从某一地点到达想要去的地方。大大节约了旅客参观校园的时间。 本文是采用C++作为开发语言,又最大程度上用了C语言的有关的语法。以visual c++6.0为开发工具。旨在实现校园导航系统中,学校的简介,景点的介绍,路线查询等基本的问题。为来往客人参观校园提供方便。 关键字:visual c++6.0 ;校园导航系统;

正文 1设计目的及要求 1. 了解并掌握数据结构与算法的设计方法,具备初步的独立分析和设计能力; 2. 初步掌握软件开发过程的问题分析、系统设计、程序编码、测试等基本方法和技能; 3. 独立完成,提高综合运用所学的理论知识和方法独立分析和解决问题的能力; 4. 训练用系统的观点和软件开发一般规范进行软件开发,培养软件工作者所应具备的科学的工作方法和作风。 5. 设计学校平面图,至少包括10个以上场所,校园导航系统能自动找出校园平面图中任意起始点与终点的最佳路径(最短路径)。求并输出路径及路径长度。 2 设计原理 2.1 C/C++语言简介 C语言是一种计算机程序设计语言。它既具有高级语言的特点,又具有汇编语言的特点。它由美国贝尔研究所的D.M.Ritchie于1972年推出。1978后,C语言已先后被移植到大、中、小及微型机上。它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。它的应用范围广泛,具备很强的数据处理能力,不仅仅是在软件开发上,而且各类科研都需要用到C语言,适于编写系统软件,三维,二维图形和动画。具体应用比如单片机以及嵌入式系统开发。 C++是一种静态数据类型检查的、支持多重编程范式的通用程序设计语言。它支持过程化程序设计、数据抽象、面向对象程序设计、制作图标等等泛型程序设计等多种程序设计风格。 2.2 开发环境 随着科学技术的不断发展,计算机科学日渐成熟,其强大的功能已为人们所深刻认识,它己进入人类社会的各个领域并发挥着越来越重要的作用。采用计算机进行校园导航已成为衡量校园数字化的重要标志。校园导航效率的好坏对于来校参观的客人和学校管理者来说都至关重要,在很大程度上影响着校园的数字化建设和学校的影响力。因此,本文所研究的校园导航系统具有一定的使用价值和现实意义。

数据结构课程设计模板

河南城建学院 课程设计报告书 专业:计算机科学与技术 课程设计名称:《数据结构课程设计》 题目:校园导航问题 班级:0814122 学号:081412211 姓名:谌文娟 同组人员:许华宇 指导老师:王永皎、赵军民、陈秋红、张延红 完成时间:2014年2月27日

摘要 校园导航要求每两个场所间可以有不同的路,且路长也可能不同,找出从任意场所到达另一场所的最佳路径(最短路径)。要用“邻接矩阵”来存储各点间的距离,然后用floyd算法求出最短路径。所以采用工程思想,将系统共分以下五个模块:节点数据结构类型、创建导航图函数、最短路径导航函数、查询函数声明、主菜单。 关键词:数据结构;算法设计

目录 目录 第一章开发环境和开发工具 (1) 1.1 C语言简介 .......................................................................................................... . (1) 1.2 开发背景 (2) 1.3 开发环境 (2) 第二章算法思想 (3) 2.1 系统需求分析 (3) 2.2 系统总体设计 (4) 2.2.1 系统设计目标 (4) 2.2.2 开发设计思想 (4) 2.2.3 系统功能模块设计 (4) 2.3 算法思想描述 (4) 第三章算法实现 (6) 3.1 数据结构 (6) 3.2 程序模块 (8) 3.3 各模块之间的调用关系 (9) 3.4 源程序代码 (10) 第四章测试与分析 (16) 4.1 测试数据选择 (16) 4.2 测试结果分析 (20) 总结 (21)

校园导游咨询系统数据结构课程设计c语言

校园导游咨询系统数据结构课程设计c语言校园导游咨询系统数据结构课程设计c语言 一、课程设计的目的 本次课程设计旨在通过C语言程序设计实现校园导游咨询系统,学生能够了解并掌握数据结构的基本概念、算法和编程技术,培养学生的编程能力和解决实际问题的能力。 二、系统需求分析 (1)用户管理 系统需要实现学生、教师、管理员三种用户的管理,分别具有不同的权限等级。要实现用户注册、登录、退出等基本功能。 (2)地图导航 系统需要实现校内地图的导航功能,包括校门、教学楼、图书馆、宿舍等位置的标注,提供校园内部的导航和查找服务。 (3)建筑信息 系统需要提供校内建筑的信息查询功能,包括建筑名称、位置、使用情况等,方便师生查询。 (4)在线咨询 系统需要提供在线咨询功能,方便学生、教师等用户在线咨询学校相

关事宜,并实现客服人员的消息处理。 三、数据结构设计 (1)用户信息表 采用哈希表作为用户信息表的数据结构,将用户信息存储在表中,方 便用户登录和信息的管理。哈希表的键值是用户名,值是用户信息 (包括用户名、密码、权限等级等)。 (2)建筑信息 采用结构体数组作为建筑信息的数据结构,将建筑信息存储在数组中,方便查询和展示。结构体包含建筑名称、位置、使用情况等信息。 (3)校内地图 为方便地图导航,采用邻接矩阵作为校内地图的数据结构,将校内各 个建筑之间的距离存储在矩阵中。矩阵的行和列分别表示建筑的编号,矩阵元素表示建筑之间的距离。 (4)消息队列 为实现在线咨询功能,采用队列作为消息队列的数据结构,将用户发 送的消息存储在队列中。消息队列的队首指针和队尾指针分别表示最 早和最晚的消息,方便客服人员的处理。 四、代码实现 (1)用户管理

校园导航系统数据结构课程设计

校园导航系统数据结构课程设计

前言 现代社会,新兴科技日新月异,信息千变万化,人们在渴望得到最多最广的信息的同时又渴望得到信息的路径能越来越简单,易操作,而且能在简易的操作中得到更多的信息。这就要求信息咨询系统的开发者在开发之时能尽可能的全面理解客户的想法要求,而且在开发的时候能更简易的操作和更新,这种思想都符程序设计的开发思想。 本次设计任务是设计学校的平面图,至少包括10个以上的场所,每两个场所间可以有不同的路,且路长也可能不同,找出从任意场所到达另一场所的最佳路径(最短路径),其实就是数据结构中图类的问题。将校园景点作为图的结点,将景点间的路径作为图的边,路径距离作为边的权值。这样一来,求两景点间最短路径的问题就抽象成了求图中一结点到另一结点的问题。 关键字:校园导航数据结构 C语言

目录 1引言 (4) 2程序设计 (4) 2.1设计时间 (4) 2.2设计目的 (4) 2.3设计任务 (4) 2.4需求分析 (4) 2.5概要设计 (5) 2.5.1.设计思路和主要步骤 (5) 2.5.2程序流程图 (6) 2.6详细设计 (6) 2.6.1学校整体局部 (6) 2.6.2打印图 (8) 2.6.3导航函数 (9) 2.6.4查找路径 (10) 2.6.5记录最短路径 (11) 3调试分析 (11) 4附录 (15) 总结 (21) 参考文献 (22)

1引言 本概要设计说明书基于之前建立的软件需求设计基础上,对“蚌埠学院校园导航系统”做出概要分析。主要解决了实现该系统需求的程序模块设计问题。包括如何把该系统划分成若干个模块、决定各个模块之间的接口、模块之间传递的信息,以及数据结构、模块结构的设计等。在以下的概要设计报告中将对在本阶段中对系统所做的所有概要设计进行详细的说明。 2程序设计 2.1设计时间 2015-06-01—2015-06-15 2.2设计目的 1.加深对《数据结构》这门课程的进一步理解与巩固 2.通过课程设计,培养自己的编程能力以及团队协作能力 3.加强自己对实际问题的分析能力,以及如何更好的将一些经典的算法应 用于实际 2.3设计任务 该导航系统为参观者提供校园主要建筑的基本信息及各建筑间的距离,同时通过该系统计算出所在位置到目的地的最短路径。 2.4需求分析 1.程序体现的功能: (1) main()——主函数 (2) navigate()——导航函数 (3) pri()——打印校园平面图函数 (4) visit()——递归查找路线函数 2.正确输入与输出形式: 如: 执行建筑查询功能: ①输入为:sod 输出为:该建筑所在的坐标为7 8 种有花草和一些艺术标记物

校园导游实验报告——数据结构

数据结构实验报告 ——实验六简单校园导游程序的设计与实现 本实验的目的是通过对校园导游程序的设计与实现来熟练掌握图型结构在实际问题中的应用。 一、【问题描述】 当人们到一个陌生的地方去旅游的时候可能会找一个导游为自己在游玩的过程中提供方便。导游可以提供很多效劳,比方介绍参观景点的历史背景等相关信息,推荐到下一个景点的最正确路径,以及解答旅游者所提出的关于旅游经典的相关问询等等。对于新生刚刚来到校园,对校园环境不熟悉的情况也如此,一般都是高年级的学生充当了“校园导游员〞的角色,如果能够提供一个程序让新生或来访的客人自主的通过与机器的“对话〞来获得相关的信息的话,将会节省大量的人力和时间。而且所提供的信息也能够做到尽可能的准确、详尽。一个成功的校园导游程序可以替代现实生活中这些“校园导游员〞,更方便了大家查询校园相关的信息。 本次实验需要开发一个简单的校园导游程序,程序的主体功能为: 1、显示校园平面图,方便用户直观的看到校园的全景示意图,并确定自己的位置。 2、为用户提供对平面图中任意场所的相关信息的查询。 3、为用户提供对平面图中任意场所的问路查询。 二、【数据结构设计】 由于各个场所通过校园中的道路相连,各个场所和连接它们的道路构成了整个校园的地理环境,所以使用图这种数据结构对他们去进行描述。以图中的顶点表示校园内各个场所,应包含场所名称、代号、简介等信息;以边表示连接各个场所的道路,应包含道路的代号、路径的长度等信息。顶点和边均使用结构体定义,整个图的数据结构可以采用教材中介绍的各种表示方法,例如带权的邻接矩阵。 三、【功能〔函数〕设计】 1、显示校园平面图的功能模块。 通过读文件的方式将各个地点的信息读入程序中.平面图中应醒目的标识出场所的准确名称以备用户查询。河北大学校园导游的根本地点信息。 ***************欢送进入河北大学校园导游系统!************** -----------------------景点名称--------------------------- 主楼多功能馆毓秀园图书馆 操场留学生楼七教八教 九教成教南大门北大门 一教逸夫楼博物馆物

数据结构-校园导游程序(附源码)

实习报告 实验名称:校园导游程序日期:2017年7月7日 姓名:李琛学号:20153204 班级:信1501-2 指导教师:陈娜 1.实验题目 校园导游程序 [问题描述] 用无向网表示学校的校园景点平面图,图中顶点表示主要景点,存放景点的编号、名称、简介等信息,图中的边表示景点间的道路,存放路径长度等信息。要求能够回答有关景点介绍、游览路径等问题。 2.需求分析 游客通过终端可询问: (1)从某一景点到另一景点的最短路径。 (2)游客从公园进入,选取一条最佳路线。 (3)使游客可以不重复地浏览各景点,最后回到出口(出口就在入口旁边)。 [基本要求] (1)将导游图看作一张带权无向图,顶点表示公园的各个景点,边表示各景点之间的道路,边上的权值表示距离.为此图选择适当的数据结构。 (2)把各种路径都显示给游客,由游客自己选择浏览路线。 (3)画出景点分布图于屏幕上。 3.概要设计 数据类型定义 #include #include //图的邻接矩阵存储表示 #define MaxInt 32767 //极大值 #define MVNum 100 //最大顶点数 //顶点类型为字符型 typedef int ArcType; //边的权值为整型using namespace std; int i, j; int S[100], D[100], min, Path[100]; int N = 49; int bestcost = MaxInt; //记录目前最少运费或代价int currentcost; //当前运费或代价 int current[MaxInt]; //当前路径 int best[MaxInt]; //记录最佳路径 struct AMGraphd {

数据结构-校园导游系统

课程设计论文(附有代码!)题目:校园导游咨询 学院:计算机科学与工程学院 专业:计算机科学与技术 姓名: 学号: 指导教师: 2014年9月22日

摘要 桂林众山环绕,风景优美,加之近年来校园环境也得到不断地改善,来访校园的游客逐渐增加,为了方便众多游客对校园景点的参观,需要给来访人士提供校园导游咨询服务,利用计算机建立一个便利的咨询系统可以很好地解决这个问题。 在本设计实验中,我所采用的是邻接矩阵作为数据的存储结构,用不同的功能模块对两地距离和校园道路信息进行编辑。当游客来访时,系统能根据用户输入的景点代号查询景点信息,提供任意两个景点间的最短路径查询,并能查询校园内的交通信息,方便游客访问。工作人员还可以为校园更新景点以及路径信息。 本文将简单介绍该系统的开发背景,详细介绍系统的主要设计思路,函数的建立和使用过程,该系统功能的实现方式和实现结果,以及对所遇到问题的分析解决,最后对该系统进行总结描述。 关键词:校园导游咨询;C++;数据结构;最短路径;查询;

目录 引言 (1) 1系统概述 (1) 2需求分析 (1) 2.1 系统需求 (1) 2.2 开发环境 (2) 3详细设计 (3) 3.1 系统结构 (3) 3.2 数据结构设计以及数据的初始化 (4) 3.2.1 图结构设计 (4) 3.2.2 数据的初始化 (4) 3.3 查询模块的详细设计 (5) 3.3.1 查询模块功能子函数设计 (5) 3.4 更新功能模块详细设计 (7) 3.4.1 更新模块功能子函数设计 (8) 4所遇到的问题和分析解决 (10) 5系统特色及关键 (11) 6结论 (12) 参考文献 (13)

校园导游系统数据结构实习报告

校园导游系统数据结构实习报告 校园导游系统数据结构实习报告 一、引言 随着信息技术的快速发展,数字化校园已成为许多学校的重要建设目标。其中,校园导游系统作为数字化校园的一部分,对于提高校园文化氛围,方便新生和游客游览校园,增强校园归属感起到了重要作用。在这次实习中,我们的主要任务是设计和实现一个校园导游系统,采用数据结构技术对校园地图进行建模和优化,以提供高效、便捷的导游服务。 二、系统设计 1、数据结构选择:考虑到校园地图的复杂性,我们采用了图(Graph)作为基础数据结构。图是由节点(顶点)和边组成的集合,可以很好地表示校园中各个地点之间的连接关系。 2、地图表示:我们将校园地图转化为图,其中每个地点对应一个节点,地点之间的路径对应边。为了更准确地表示实际环境,我们使用了带权重的边,权重表示路径的长度或美观度。 3、导游路径规划:我们使用了最短路径算法,如Dijkstra算法和 A*算法,来规划最佳游览路径。用户可以在系统中设定起点和终点,

系统会根据图中的边和权重计算出最短路径。 4、语音导航:系统可以通过用户的手机实时获取位置信息,并使用TTS(Text-to-Speech)技术将规划的路径转化为语音提示,方便用户边听边走。 5、数据库设计:我们设计了一个关系型数据库,用于存储校园地图信息、用户信息等。通过使用索引和查询优化技术,提高了系统性能。 三、系统实现 1、环境配置:我们使用了Python语言和相关的数据结构库来实现系统。开发环境为Windows 10操作系统,数据库采用了MySQL。 2、代码实现:我们对Python语言和相关库进行了深入学习,掌握了图算法的实现方法。在实现过程中,我们遇到了一些问题,如最短路径算法的优化、语音导航的实时性等。通过查阅资料、讨论和实践,我们成功解决了这些问题。 3、测试与调试:我们对系统进行了全面的测试,包括单元测试、集成测试和系统测试。在测试过程中,我们发现并修复了一些bug,提高了系统的稳定性和可靠性。 4、用户界面设计:我们设计了一个简洁、易用的用户界面,使用户可以方便地使用系统。用户界面包括地图展示、路径规划、语音导航等功能,并支持用户输入和交互。

基于微信小程序的智能校园导览系统设计与实现

基于微信小程序的智能校园导览系统设计与 实现 导语:本文将介绍基于微信小程序的智能校园导览系统的设计与实现。通过该系统,学生、教职工及访客可方便地了解校园各个区域的 位置信息、公共设施、活动信息等,提高校园内的导航效率,提供更 好的校园体验。 一、引言 随着智能手机和移动互联网的普及,校园导览系统越来越受人们关注。传统的校园导览方式有诸多不便之处,如纸质导览图容易损坏、 获取信息不及时等。而微信小程序作为一种快捷、便利的移动应用平台,提供了更好的解决方案。 二、系统设计 1.用户注册与登录 用户需要通过微信账号注册和登录系统才能使用导览功能。登录后,系统将根据用户的身份(学生、教职工、访客)提供不同的导览内容 和权限。 2.地图显示与定位 系统将校园地图以二维平面的形式展示给用户,同时结合用户的GPS定位功能,将用户当前位置在地图上进行标注,方便用户快速了 解自己所处位置。

3.位置搜索与导航 用户可以通过在搜索栏输入关键词或目的地名称,系统将根据输入内容提供相关地点的搜索结果并在地图上进行展示。用户可以选择目的地,系统将自动生成最优化的导航路线,引导用户快速到达。 4.周边信息展示 系统还提供了校园内各个区域的相关信息展示,包括周边的学院、宿舍、餐厅等公共设施的位置和简介。用户可通过浏览这些信息,更好地了解校园内的设施分布。 5.活动发布与参与 导览系统还提供了学校内各类活动的发布与参与功能。学校、学院和社团等可以通过系统发布校园活动的信息,用户可根据自己的兴趣选择参与,并获得相应的导航指引。 三、系统实现 1.前端界面设计 基于微信小程序的智能校园导览系统的前端界面设计应简洁美观,信息布局合理。导航栏应包含地图、搜索、周边和活动等功能入口,便于用户直观操作。 2.后端开发 后端开发主要包括用户认证与授权、地图数据管理、搜索算法和导航算法的开发等。根据用户登录身份进行权限控制,管理校园地图数

(整理)校园导航系统罗生存组,李建武,何月甫

数据结构课程设计报告 图书管理系统 题目:图书管理系统 组长:罗生存成员:李建武何月甫 开发日期:2011-12-30 一、需求分析 二、软件功能模块描述 1.数据结构定义模块:模块定义了导航图中各个节点的基本结构类型,主要 采用邻接矩阵的存储结构来真实反映各节点到其他所有节点的路径长(权值大小)。 2.导航图建立模块:采用上述结构体类型对导航图中每个节点进行赋值。包 括:各定点的名称(地点名),各个节点到其他所有节点的真实路径长度(赋权值)。 3.求最短路径模块:本模块的基本思想是采用迪杰斯特拉算法求最短路径。 次模块是本校园导航系统的核心模块,求两点间的最短路径与求一点到其他所有点最短路径两个子功能均是在最短路径算法模块的基础上进行调用,进而实现导航功能。 4.主菜单:主菜单中主要是显示导航图中的所有导航节点,能够快速方便的 对各个地点进行导航。 三、功能模块分析 2.2导航平面图(无向图):

河南科技学院平面图 2.3数据结构描述与定义: 2.3.1节点数据类型 #define MAX_V 30 typedef struct { char* vexs[MAX_V]; //顶点向量 int arcs[MAX_V][MAX_V];//邻接矩阵 int vexnum,arcnum;//图的当前顶点数和弧数 }MGraph; 2.3.2创建导航无向图函数 int CreateUDN(MGraph &G) 函数描述:为每个节点进行命名、每个节点到其他所有各节点的定值用 邻接矩阵进行存储

2.3.3求最短路径函数(迪杰斯特拉算法) void ShortPath(MGraph &G,int v0,int p[MAX_V][MAX_V],int d[]) 函数描述:用Dijkstra算法求无向网G中v0节点到其余节点v的最短路径P[v]及带权长度D[V]。 P[V][W]为TURE,则W是从V0到V当前求得最短路径上的顶点。 Final为TURE,当且仅当V属于S,即已经求得从V0到V的最短路径 2.3.4导航菜单函数 void menu() 函数描述:输出各节点的标号,方便用户操作 四、测试结果与分析 校园导航系统登录界面 导航一:任意两地点之间的最短路径演示图

校园导游系统课程设计报告

1、需求分析 (1) 2、总体设计 (1) 2.1 抽象数据类型图的定义 (1) 2.2 程序中包含的模块 (1) 2.3 模块间的调用关系 (3) 3、详细设计 (3) 3.1 代码设计 (3) 3.1.1 定义结构体和全局变量 (3) 3.1.2 平面图的初始化 (4) 3.1.3 最短路径查询 (5) 3.1.4 景点信息查询 (8) 3.1.5 景点信息更新 (8) 3.2 界面分析 (9) 3.2.1 主程序界面 (9) 3.2.2 景点信息的查询 (10) 3.2.3 最短路径查询..................................................................................... 1 1 3.2.4 管理校园查询系统 (12) 4、总结报告 (12) 参考文献 (13)

设计一个校园导游系统程序,为来访的客人提供各种服务的信息查询。(1).设计潍坊学院校园平面图,所含的景点不少于 10 个。以图中顶点表示校各景点,存放景点名称、代号、简介等信息;以边表示路径,存放路径长度等相关信息。 (2).为来访客人提供图中任意景点相关信息的查询。 (3).为来访客人提供图中任意景点的问路查询,即查询任意两个景点之间的一条最短的简单路径。 2.1 概要设计 2.1.1 函数定义的变量 /*定义符号常量*/ #define INT_MAX 10000 #define n 10 /*定义全局变量*/ int cost[n][n]; /* 边的值*/ int shortest[n][n];/* 两点间的最短距离*/ int path[n][n]; /* 经过的景点*/ 2.1.2 程序中包含的模块 (1)主程序模块 void main()/*主函数*/

数据结构课程设计校园导航

一、课程设计目的 本课程设计的目标就是要达到理论与实际应用相结合,提高学生组织数据及编写大型 程序的能力,并培养基本的、良好的程序设计技能以及合作能力。 设计中要求综合运用所学知识,上机解决一些与实际应用结合紧密的、规模较大的问 题,通过分析、设计、编码、调试等各环节的训练,使学生深刻理解、牢固掌握数据结构 和算法设计技术,掌握分析、解决实际问题的能力。 通过这次设计,要求在数据结构的逻辑特性和物理表示、数据结构的选择和应用、算 法的设计及其实现等方面,加深对课程基本内容的理解。同时,在程序设计方法以及上机 操作等基本技能和科学作风方面受到比较系统和严格的训练。 二、课程设计内容 1)问题描述 用无向网表示你所在学校的校园景点平面图,图中顶点表示主要景点,存放景点的编号、名称、简介等信息,图中的边表示景点间的道路,存放路径长度等信息。要求能够回答有关景点介绍、游览路径等问题。 2)基本要求 (1)查询各景点的相关信息; (2)查询图中任意两个景点间的最短路径。 (3)查询图中任意两个景点间的所有路径。 (4)增加、删除、更新有关景点和道路的信息 三、课程设计过程 1.需求分析

(1)设计学校的校园平面图,选取出若干的具有代表性的景点构成一个抽象的无向带权图,顶点为景点,边的权值代表了景点间路径的长度。 (2)将景点的序号,名称,介绍存放起来准备查询。 (3)提供任意景点的信息; (4)提供任意经典的路径查询及其最优路线的查询 (5)平面图景点的增加及删除,以及边和权值(长度)的改变 2.概要设计 1:第一点是主界面的设计,首先,为了该系统各个功能的管理,设计出含有多个菜单项的主菜单界面,可以更方便的使用该系统。 2:第二点是存储结构的设计,采取了图结构类型(mgraph)存储校园图的信息,景点信息用结构数组vexs存储,而且利用全局变量:visited[]数组用于存储顶点是否被访问标志;d[]数组用于存放权值和查找路径顶点的编号;campus是一个图结构的全局变量。 3:第三点是设计各个功能的实现,学校景点的介绍通过函数browsecompus()来实现;查询景点间的最段路径通过Floyd(弗洛伊德)算法实现;查询景点间的所有路径通过allpath函数和path函数来实现;更改图的信息可以由主函数changegraph以及其他函数可以实现。 3.详细设计 (1)主要的操作界面的显示以及无向网操作

相关主题