地铁线路项目需求简要分析
作者:互联网
需求:
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算法计算最短路径
标签:简要,siteName,transfer,线路,地铁,subway,号线,txt 来源: https://www.cnblogs.com/zky0320/p/11550388.html