需求:

  1. 实现一个命令行程序

  2. 参数:

    -map:来获得对应的自定义地铁文件(命名为 subway.txt),从而得到地铁线路图的信息

java subway -map subway.txt

    -a:指定用户希望查询的地铁线路

    -o:指定输出的文件

java subway -a 1号线 -map subway.txt -o station.txt

    -b:求取最短路径,该参数加两个地铁站点名称分别作为出发与目的

java subway -b 洪湖里 复兴路 -map subway.txt -o routine.txt

      输出文件格式:

3
洪湖里
西站
6号线
复兴路

  3. 测试:写出至少10个测试用例确保你的程序能够正确处理各种情况

初步思路:

  数据文件设计(subway.txt):

  将地图以文本格式输入,格式为(地铁线路号  站点名称  可换成地铁线路号)

1 刘园 0
1 西横堤 0
1 果酒厂 0
1 本溪路 0
1 勤俭道 0
1 洪湖里 0
1 西站 6......
2 天津站 39 (特殊情况,三线交叉)......

  读取txt文件后,用Json格式存储

{
"1号线": [
{ "siteName":"刘园" , "transfer":"0" },
{ "siteName":"西横堤" , "transfer":"0" },
{ "siteName":"果酒厂" , "transfer":"0" },........
]}{
"2号线": [
{ "siteName":"曹庄" , "transfer":"0" },
{ "siteName":"卞兴" , "transfer":"0" },
{ "siteName":"芥园西道" , "transfer":"0" },........
]
}{
  ........}
 

  以转站点为节点,连成一张图,边的权值为相隔的站点数

  当需要求取最短路径时,假设从刘园到天塔,将这两点加入图中,后使用Floyed算法或Dijstra算法计算最短路径

转载于:https://www.cnblogs.com/zky0320/p/11550388.html

地铁线路项目需求简要分析相关推荐

  1. 开源-一步步实现cnblogs博客采集工具-对项目需求的分析

    欢迎继续关注CnblogsFan开源项目, 在昨天的项目时间中, 我们已经完成了项目开始前的一些准备工作, 今天, 我们就一起来分析下项目的一些需求. 在对需求进行分析之前我们先来再次熟悉下一个完整项 ...

  2. 个人项目需求和分析------日程管理APP

    1.引言 1.1背景 本项目的开发目的是针对日程提醒的管理系统.让自己记得何时何地应该做什么. 1.2目标 通过本项目可以提醒自己时间与日程,是闹钟与便签的结合. 1.3用户对象 所有年龄成员 2.系 ...

  3. java地铁线路规划_地铁线路规划——简单分析

    计算地铁线路最短路径 我们要将地铁线路信息等用一个文本文件的形式保存起来,应保存的信息应包括地铁线路名称.各个地铁站点的名称以及车站换乘信息,使得应用程序可以通过读取这个文件,就能掌握关于北京地铁线路 ...

  4. 故障处理 软件 需求_「行业知识」地铁车辆故障智能处理分析

    摘 要:为保障地铁线路运营秩序,提高运营服务质量,降低人为因素所导致的故障的影响,必须研究地铁车辆故障智能处理系统,以适应未来地铁车辆的全自动化运行模式.基于此,笔者就地铁车辆故障智能处理进行简要分析 ...

  5. 预培训个人项目(地铁线路规划)

    预培训个人项目(地铁线路规划) 1.需求 需求1 用户可以通过命令行启动这个程序.程序在启动时,会读取不同命令对应的命令行参数.对于地铁线路信息图,我们约定它采用参数 -map 作为标志.程序启动时需 ...

  6. 《少年先疯队》第四次作业:项目需求调研与分析

    博文简要信息表: 项目 内容 软件工程 https://www.cnblogs.com/nwnu-daizh/ 本次实验链接地址 https://www.cnblogs.com/nwnu-daizh/ ...

  7. 《你说对就队》第四次作业:项目需求调研与分析

    <你说对就队>第四次作业:项目需求调研与分析 内容 项目 这个作业属于哪个课程 [教师主页] 这个作业的要求在哪里 [作业要求] 团队名称 <你说对就队> 作业学习目标 1.探 ...

  8. 实验八 《Coderxiaoban团队》团队作业4:基于原型的团队项目需求调研与分析

    实验八 <Coderxiaoban团队>团队作业4:基于原型的团队项目需求调研与分析 项目 内容 这个作业属于哪个课程 任课教师博客主页链接 这个作业的要求在哪里 实验八 团队作业4:基于 ...

  9. 《AlwaysRun!团队》第四次作业:项目需求调研与分析

     项目  内容  这个作业属于哪个课程 http://www.cnblogs.com/nwnu-daizh/  这个作业的要求在哪里 https://www.cnblogs.com/nwnu-daiz ...

最新文章

  1. CPU架构的llvm后端
  2. 深入理解 ProtoBuf 原理与工程实践(概述)
  3. python 以 utf-8 格式写文件
  4. OpenGL ktxview (KTX查看器)的实例
  5. mysql 必读_MYSQL 调优和使用必读
  6. php mysql 值是否存在_php检测mysql表是否存在的方法小结
  7. iOS中的图像处理(一)——基础滤镜
  8. 使用简介EntityFramework6.0
  9. python包含多个元组的元组_如何在python中将多个”列出的”元组连接成一个元组?...
  10. 极光推送指定用户推送_App用户都睡着了?是时候用推送和活动唤醒一波了!
  11. 被除数是负数的话,为啥要加上偏移量?
  12. 一小时精通SVN版本控制 之五 团队协作开发
  13. 解决安装并配置好 hb后,hb -h检测不对
  14. ETL学习之八:添加日志记录
  15. ros自带到期通知_iPhone自带的8个App,没想到这么好用!
  16. idea的英文是什么意思_idea,是什么意思
  17. 钉钉机器人关键字自动回复_【原创新软件】办公引流机器人个人微信企业微信QQ通用的自动回复,群发助手...
  18. html文字溢出怎样处理,css文本溢出处理
  19. ahocorasick使用
  20. 卫生院医保计算机管理制度,卫生院医保规章制度

热门文章

  1. 虹软1:N 基于mysql的插件udf 人脸比较速度优化。。。。
  2. android高级工程师应该会的知识
  3. Pytorch踩坑记录:关于用net.eval()和with no grad装饰器计算结果不一样的问题
  4. 建立您的启动:运行多个域
  5. VMware公司揭开NSX半边面纱,旨在推动DevOps能力
  6. 【imessage苹果群发苹果推】软件安装应用程序/框架/ gcdwebservers
  7. 一个没有混进大厂的普通程序员,10年真实收入变化
  8. 奥塔在线:如何查看连接数?
  9. ROWNUM用法--SELECT * FROM T WHERE ROWNUM=1
  10. 一万字详解C语言中长度为零的数组