数据结构课程设计——导航系统.docVIP

  1. 1、本文档共19页,可阅读全部内容。
  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文档。上传文档
查看更多
数据结构课程设计——导航系统

数据结构课程设计——导航系统 一、课程设计内容描述 1.问题描述 交通网络中常常提出这样的问题:从甲地到乙地之间是否有公路连通?在有多条通路的情况下,哪一条路最短?导航系统便可以解决这样的问题。与此同时,城市的扩建,新地点的添加,新道路的修建,需要导航系统具备添加新地点,添加新路线的功能。而受一些生态工程的实施,例如退耕还林还草,和自然条件的影响,本来存在的一些地点或道路需要删除或更改,此时导航图还应该及时的更新,以适应新的查找两点间最短路径的需要。 除此之外,用户的查找应是极为方便的,对于最短路线,新添加的地点和路径以及删除的地点和路径的感知应是直观的,这样才能真正的给使用导航系统的人们提供方便。 2.需求分析 导航系统的基本功能是: 1、输入:要查找最短路径的起点和终点(已知交通图); 2、输出:起点至终点的最短路径; 3.、添加,删除地点,更新交通图; 4.、友好的界面交互; 5、对此导航系统功能的扩展。 二、实现思想,算法描述 使用语言:JAVA 编译环境:Eclispe SDK 3.0.2 1.概要设计 导航系统的实现功能: 1、用户输入需要查找的最短路线的起点城市名和终点城市名 输入有两种方式:1.在指定文本框输入城市名称,2.在交通图中点击起点和终点 确认后,输出最短短路径并在交通图上标示; 2、添加新地点并在交通图上显示; 3、添加新路线并在交通图上显示; 4、删除某地点并在交通图上显示; 6、删除某路线并在交通图上显示; 与用户交互过程大致如图2.1 添加路线查找最短路线删除地点输入新路线起点终点和路长用户确定查找路径起点终点输入起点和终点 添加路线 查找最短 路线 删除地点 输入新路线起点终点和路长 用户 确定查找路径起点终点 输入起点和终点 图2.1 输出最短路径及长度 交通图响应用户操作,动态变化, 实现实时更新 输入 地点名称 输入新地点名称位置 删除路线 添加地点 程序的大体构架,主要模块如图2.2 类 类List ArrayListPlace list;列表存储交通图中所有点信息 List();构造发法,信息初始化 add(int i,Place p);在列表索引i位置添加地点p add(Place);在列表尾部追加地点 get(int index)得到索引index的地点 intdexOf(String s);得到名称为s的地点的索引 remove(String s)从列表中移除名称为s的地点 size();返回列表大小 类Place String n;地点名称 Point p;地点在图中坐标 Place(String s,Point p);构造名称为s位置为p的地点 getName();获取地点名称 getPoint();获取地点位置 类Graph NoEdge;无边常量 int [][] a;存储加权无向图 int n;int e;,int max;顶点数,边数,最大容量 Graph();初始化图 add(int,int,double)添加边 addPoint();添加顶点 delete(int,int);删除边 deletePoint(int);删除顶点 edge();返回边数 vertices();返回顶点数 exist(int,int);边(i,j)是否存在 resize();数组扩充容量 getLine(int,ArrayList);获得与某顶点有相连的顶点 ShortestPaths(int ,double[],int[]);求最短路径 类Path(同步更新List与Graph) addPath(String,Graph,List); delete(String,Graph,List); deletePath(String,String,Graph,List); getLine(String,ArrayListPoint,Graph,List); getPath(String,String,ArrayListPlace,Graph,List) 类Gps JTextField sf…;各文本区 JButton button;各按钮 Gps();GUI设计及监听添加 actiongPerFormed(ActionEvent e);按键监听 图2.2 类DrawPanel extends JPanel(交通图更新) Graphics2D g2d; ArrayListPoint a;存储地点坐标 ArrayListPoint b,c;存储边的起始,终止点 ArrayListString name;存储地点名 ArrayListString weight;存储路线长度 ArrayListPoint d;存储最短路径经过点 DrawPanel(); paint(Graphics g); ad

文档评论(0)

157****5685 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档