一、项目思路

本项目实现一个帮助进行地铁出行路线规划的命令行程序,参照平时实际出行时情况,考虑换乘、候车的时间等代价,在求地铁线路最短路径时,也按换乘次数最少来实施的。因能力有限,程序若有不完善的地方,尽情老师谅解。

  1. 地铁线路信息等用一个名为subway.txt文本文件存储,文件内容及格式如下:

Line1:刘园,西横堤,果酒厂,本溪路,勤俭道,洪湖里,西站#6,西北角,西南角#2,二纬路,海光寺,鞍山道,营口道#3,小白楼,下瓦房#5,南楼,土城,陈塘庄,复兴门,华山里,财经大学,双林,李楼
Line2:曹庄,卞兴,芥园西道,咸阳路,长虹公园#6,广开四马路,西南角#1,鼓楼,东南角,建国道,天津站#3#9,远洋国际中心,顺驰桥,靖江路#5,翠阜新村,屿东城,登州路,国山路,空港经济区,滨海国际机场
Line3:小淀,丰产河,华北集团,天士力,宜兴埠,张兴庄#5,铁东路,北站#6,中山路,金狮桥,天津站#2#9,津湾广场,和平路,营口道#1,西康路,吴家窑,天塔,周邓纪念馆,红旗南路#6,王顶堤,华苑,大学城,高新区,学府工业区,杨伍庄,南站
Line5:北辰科技园北,丹河北道,北辰道,职业大学,淮河道,辽河北道,宜兴埠北,张兴庄#3,志成路,思源道,建昌道,金钟河大桥#6,月牙河,幸福公园,靖江路#2,成林道,津塘路,直沽#9,下瓦房#1,西南楼,文化中心#6,天津宾馆#6,肿瘤医院#6,体育中心,凌宾路,昌凌路,中医一附院,李七庄南
Line6:南孙庄,南何庄,大毕庄,金钟街,徐庄子,金钟河大桥#5,民权门,北宁公园,北站#3,新开河,外院附中,天泰路,北运河,北竹林,西站#1,复兴路,人民医院,长虹公园#2,宜宾道,鞍山西道,天拖,一中心医院,红旗南路#3,迎风道,南翠屏,水上公园东路,肿瘤医院#5,天津宾馆#5,文化中心#5,乐园道,尖山路,黑牛城道,梅江道,左江道,梅江公园,梅江会展中心,解放南路,洞庭路,梅林路
Line9:天津站#2#3,大王庄,十一经路,直沽#5,东兴路,中山门,一号桥,二号桥,张贵庄,新立,东丽开发区,小东庄,军粮城,钢管公司,胡家园,塘沽,泰达,市民广场,太湖路,会展中心,东海路

线路名称后用“:”与其后站点间隔,站点与站点间用“,”间隔;
若某站为换乘或中专站点,在其后用“#数字”,表示在此线路的这个站点上可以换乘到数字序号所指的线路上,如1号线的西站可以转到6号线,9号线的天津站可以转到2号线和3号线。
2.运用C++,具体思路有:

mian()接收用户的输入,调用各个函数块,实现最短路径。

Station()函数,实现读取各个线路的站点名称,并将其放入数组中,利用数组可以标记出具有换乘特质的站点。

利用BFS算法,实现指定源点-终点的最短路径查找。 .BFS算法利用队列实现按层次遍历图。 . 在层次遍历中,记录路径及最短路径。

Path()函数,实现路径的生成和选择。
测试:

1、测试读取各个线路TXT文本的正确性

2、测试换乘车站数组是否读取正确

3、测试路径选择函数,第一是否可以输出,第二输出是否为最短路径

  • 体会:
  • 1、多年不进行项目编程,生疏很多,需要写一写代码了

转载于:https://www.cnblogs.com/zhanggreenwind/p/11225214.html

2019北航培训个人项目相关推荐

  1. Premiere Pro CC 2019 Essential Training: The Basics Premiere Pro CC 2019基本培训:基础知识 Lynda课程中文字幕

    Premiere Pro CC 2019 Essential Training: The Basics 中文字幕 Premiere Pro CC 2019基本培训:基础知识 中文字幕Premiere ...

  2. 2019元月新SAP项目落地记

    2019元月新SAP项目落地记 ~ 追求绝对安全感,要求无缝衔接 ~ 元旦刚过,我就开始了新SAP项目的寻找之旅. 笔者追求绝对的安全感,以及新旧项目之间的无缝衔接.即不能让自己长时间的闲着无项目做, ...

  3. 【培训】 项目实训中遇到的问题 总结 跟解决方法

    [培训] 项目实训中遇到的问题 总结 跟解决方法 参考文章: (1)[培训] 项目实训中遇到的问题 总结 跟解决方法 (2)https://www.cnblogs.com/TwilightSnow/p ...

  4. views 多个文件夹 netcore_Visual Studio 2019发布.NET Core项目部署或者独立运行的方法...

    Visual Studio 2019发布.NET Core项目部署或者独立运行的方法 Visual Studio 2019是一款专为程序开发人员设计,支持 Windows 和 Mac系统,适用范围广, ...

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

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

  6. 2019北航夏令营保研经验及体会

    2019北航夏令营体会 7月11日 7月12日 反思部分 查缺补漏 近期计划: 2019年7月12日晚,北航计算机夏令营面试教训总结 北航是参加的第三个夏令营,也是至今为止最深刻的一个,尤其是面试环节 ...

  7. 2019北航961考研初试经验之谈

    大家好,作为2019北航计算机961考研生,谈一些自己的做法和感想,谈不上是经验.因为经验都是别人走过的,每个人情况不一样,他人的经验也是不可复制的,所以希望大家能看到自己想看到的东西就可以了. 1. ...

  8. 2019游戏培训要花多少钱?

    最近手机游戏开发比较流行.不是手游,是像愤怒的小鸟,捕鱼达人等.用cocos2d开发android.ios下运行的手游,相对大型游戏则要简单许多.要是你有语言基础加上好的创意想法,下一个土豪就是你.2 ...

  9. Excel 2019 Essential Training Excel 2019基本培训 Lynda课程中文字幕

    Excel 2019 Essential Training 中文字幕 Excel 2019基本培训 中文字幕Excel 2019 Essential Training 与Excel专家Dennis T ...

最新文章

  1. (八)pdf的构成之文件体(page属性)
  2. 【Python】Numpy扩充数组函数之repeat和tile用法
  3. HTML通知、新闻等文字列表的无缝滚动效果
  4. mysql show tables_mysql — show tables的结果不一定准确 | 学步园
  5. 第三课--EFM32GG11系列--串口接收不定长度数据的几种方式
  6. php获取数据库不同,php – 从master数据库获取数据库凭据,然后连接到不同的数据库...
  7. 用odac连接oracle 12154,OracleConnection 連線出現「ORA-12154: TNS: 無法解析指定的連線 ID」...
  8. mysql 英文占几个字符_MySQL 数据库 varchar 到底可以存多少个汉字,多少个英文呢?我们来搞搞清楚...
  9. Linux ping ipv66,IPV6的测试-ipv6网卡配置-ipv6的nginx配置-ipv6的ping测试-ipv6的curl测试...
  10. python小型编程_学习Python编程的11个资源
  11. 华为HCIE云计算培训笔记第3天
  12. 哈工大本部2022形式语言与自动机期末试题
  13. Android蜗牛睡眠技术文档,蜗牛睡眠app 问题提问集中贴 常见问题汇总
  14. Python 面向对象 (六) 实例学员管理系统
  15. 必背C语言算法 C语言小写转大写
  16. 联想笔记本拯救者Y7000盒盖不休眠问题,Win10
  17. 飞塔防火墙的配置与策略
  18. pointnet语义分割_训练并预测自己的数据
  19. 功能强大的黑科技APP,各种免费资源一应俱全!
  20. 手把手教你开发第一个HarmonyOS (鸿蒙)移动应用

热门文章

  1. 《贪婪之秋》——游戏主观评价及灵感提取
  2. 【Unity】Unity 生命周期
  3. 电视盒子哪款好?2023电视盒子品牌排行榜重磅出炉
  4. 微信小程序开发-app开发公司-软件开发
  5. 服务器光驱装系统教程图解,图文解析win7系统光驱装系统的具体步骤
  6. GAMES101-现代计算机图形学入门-闫令琪 - lecture14 光线追踪2 - 加速结构(Ray Tracing 2 - Acceleration) - 课后笔记
  7. 2021年医药行业7月策略报告:逢低加大医药配置,把握血制品十四五新机遇
  8. 卡拉赞服务器延迟,魔兽怀旧服:TBC前策划的“小动作”,400毫秒延迟被改!
  9. 为什么有些同事昨天还干的好好地,今天就离职了老板都留不住?
  10. 识货跳转x宝时携带参数的实现