第一次作业——subway
作业源程序代码:https://github.com/R-81/subway
作业程序使用说明:通过输入命令参数求解路线(仅支持-b,-c),根据参数得出路线后,程序不会结束,此时可输入地铁路线名(例如地铁一号线)输出此路线上所有车站名。
1)各模块开发需要消耗的时间
Personal Software Process Stages |
Time |
|
Planning |
计划 |
|
· Estimate |
· 估计这个任务需要多少时间 |
15h |
Development |
开发 |
|
· Analysis |
· 需求分析 (包括学习新技术) |
1h |
· Design Spec |
· 生成设计文档 |
0h |
· Design Review |
· 设计复审 (和同事审核设计文档) |
0h |
· Coding Standard |
· 代码规范 (为目前的开发制定合适的规范) |
0h |
· Design |
· 具体设计 |
2h |
· Coding |
· 具体编码 |
8h |
· Code Review |
· 代码复审 |
0h |
· Test |
· 测试(自我测试,修改代码,提交修改) |
8h |
Reporting |
报告 |
|
· Test Report |
· 测试报告 |
1h |
· Size Measurement |
· 计算工作量 |
0h |
· Postmortem & Process Improvement Plan |
· 事后总结, 并提出过程改进计划 |
1h |
合计 |
21h |
2)改进程序
对于-c的路径索索进行了一次改进,具体表现为将搜索过的线路进行标记,在下一次搜索的时候省去搜索这些被标记的线路,能够减少大量的多余搜索,但是在多个线路上的换乘车站依旧能够得到有效搜索。
3)文件存储格式及理由
我采用的文件存储格式是Line 路线名 地铁站名。Line是为了区分路线名和地铁站名,Line后紧跟的字符串为路线名。对于环线路线,需要在该线路站名最后加上重复的起点,达到连接成环的效果。
4)程序正确性论证
程序从文件读取线路信息和站点信息,通过处理后存入合适的数据结构中,通过参数的不同,选择以广度优先搜索为主要算法,不同的搜索方式进行路径搜索。经过多次测试和改正后,能达到作业要求效果。
5)学习与体悟
感觉这次由于自己在书写代码前没能做好充分的思考,导致在测试阶段重复修改了很多次,浪费了不少时间,下次应该在设计阶段考虑得更周密一点,这样反而会节省出来时间。
6)性能分析图
7)测试用例
-c 苹果园 2号航站楼
-b 苹果园 2号航站楼
-c 2号航站楼 苹果园
-b 2号航站楼 苹果园
-b 知春路 北京西站
-c 知春路 北京西站
-b 四惠 高碑店
-b 四惠 四惠东
地铁一号线
地铁八通线
第一次作业——subway的更多相关文章
- C 语言学习 第一次作业总结
第一次的作业是冯老师布置的练习题,需要在pta平台上完成.我这边看不到结果,但是透过冯老师给出的截图,同学们都还是认真的去做的.同时,我这边也布置了一个持续 3 周的作业:熟悉 git 的使用.因为后 ...
- 耿丹CS16-2班第一次作业汇总
第一次作业统计完成. 注:1.作业顺序:取最早交作业的前3名,依次拿5,2,1分,前提是作业质量较高,否则轮至下一名同学得分,其余同学得0分:2.作业情况:满10分,空一题扣2分,心得写得好的有额外加 ...
- 软件工程(QLGY2015)第一次作业小结(含成绩)
相关博文目录: 第一次作业点评 第二次作业点评 第三次作业点评 Github项目提交 github的代码提交,大部分人都只是提交了单个文件,存在几个问题 请提交完整的项目文件到github 问题:为什 ...
- 2015级软工实践k班第一次作业-准备
第一次作业-准备······ 几篇文章阅读下来发现一个事实,还是要有明确的目标,清楚自己需要做什么最为重要.然后根据目标确定需要为之所做的准备工作,考研也好,工作也罢,都是服务于自己的目标. 问题答应 ...
- java第一次作业0
lsl321 java第一次作业 #1. 本章学习总结 你对于本章知识的学习总结 本章我们学习了各种java相关文件的使用,以及码云,博客,pat等程序辅助软件,这些对于我们专业的学习有非常大的帮助, ...
- 集大1513 & 1514班 软件工程第一次作业评分与点评
谢谢大多数同学按时完成了作业,同学态度都比较端正,没有为了完成作业或者讨好老师而说一些假话空话. 很多同学选择CS之前并没有从兴趣或者擅长出发.这是一个普遍的现象,十年前我们是这样,十年后的孩子们还是 ...
- OO第一次作业总结
OO第一次学习总结 1.第一次作业:多项式加法 从未接触过java的我,在从输入输出开始学了几天后,按照C语言的思路,写出了一个与面向过程极其接近的程序. 在这个程序中,存在两个类:一个是Comput ...
- # C语言程序设计第一次作业1234
---恢复内容开始--- C语言程序设计第一次作业 1.求圆面积和周长 输入圆的半径,计算圆的周长和面积 (1)流程图 (2)测试数据及运行结果 测试数据r=3 运行结果 2.判断闰年 输入一个四位年 ...
- 构建之法助教园地第一次作业--点评<西北师范大学|李晓婷>
一 博客点评 第一次作业--准备篇:https://www.cnblogs.com/Mookiepiece/p/10464606.html#4192515 点评内容: 首先,你对电脑很感兴趣,兴趣就是 ...
随机推荐
- Oracle常用语句集合
oracle常用经典SQL查询 常用SQL查询: .查看表空间的名称及大小 )),) ts_size from dba_tablespaces t, dba_data_files d where t. ...
- linux shell取文本最后一行
目前我知道的方法有四种 1.awk 'END {print}' 2.sed -n '$p' 3.sed '$!N;$!D' 4.awk '{b=a"\n"$0;a=$0 ...
- 【推荐】CentOS安装Tomcat-7.0.57+启动配置+安全配置+性能配置
注:以下所有操作均在CentOS 6.5 x86_64位系统下完成. #准备工作# 在安装Tomcat之前,请确保已经安装了JDK-1.7环境,具体见<CentOS安装JDK-1.7>. ...
- Eclipse debug断点调试代码时出现source not found问题
偶尔调试代码的时候会出现这种事情,之前并没有特别注意,今天稍微搜集一下相关资料: 1.跳转到的代码的确没有源码,下载源码后选择源码位置后便会正常显示源码. 2.源码和class文件不一致.即便勾选了a ...
- HTML5 移动浏览器支持
- java certificate 工具 portecle.sourceforge.net
https://sourceforge.net/projects/portecle/?source=directory 当需要处理java证书的时候这个是个好工具.省得敲命令了.
- JAVA的垃圾回收机制
1. 垃圾回收的意义 在C++中,对象所占的内存在程序结束运行之前一直被占用,在明确释放之前不能分配给其它对象:而在Java中,当没有对象引用指向原先分配给某个对象的内存时,该内存便成为垃圾.JVM的 ...
- Web前端面试题目及答案汇总
HTML/CSS部分 1.什么是盒子模型? 在网页中,一个元素占有空间的大小由几个部分构成,其中包括元素的内容(content),元素的内边距(padding),元素的边框(border),元素的外边 ...
- smarty下如何将一个数保存为两位小数
smarty模板是一种缓存技术,下面介绍一下smarty string_format用法 取小数点后2位: 用法如下: //index.php$smarty = new Smarty; $smarty ...
- Activity数据传递
1.在启动界面里通过intent调用方法putExtra添加欲携带数据 2.在被启动界面里通过getIntent方法获取Intent对象 3.通过intent的getXxxExtra方法获取对应的数据