第一次个人编程作业

https://github.com/AndreiIvanovichMihailov/031702217

PSP表格

PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟)
Planning 计划 10 10
Estimate 估计这个任务需要多少时间 5 6
Development 开发 1000 1500
Analysis 需求分析(包括学习新技术) 30 360
Design Spec 生成设计文档 10 10
Design Review 设计复审 5 15
Coding Standard 代码规范(为开发制定合适的规范) 30 60
Design 具体设计 60 60
Coding 具体编码 1000 1500
Code Review 代码复审 10 240
Test 测试(自我测试,修改,提交修改) 10 10
Reporting 报告 60 90
Test Report 测试报告 10 0
Size Measurement 计算工作量 5 0
Postmortem & Process Improvement Plan 事后总结并提出过程改进计划 60 60
合计 1305 2361

设计与实现

刚开始看这个题目时就觉得挺难的后来就是越做越难,可能是我自己心态没那么好,这个作业是我有史以来成本最高的作业了。之前他们说python写会简单些但是我不会,然后我去买了本教材然后看了几天发现等我把python学会了说不定deadline2都过去很久了。然后我只能选择用C++硬写,初始版本那就简直了什么都干不了,我又去推倒重来最后搞出来个这个东西。大概的思路呢就是先把手机号码搞出来,最开始我是想直接找数字,找到一位数字后直接向后数十一位,如果都是数字的话说明这一定是个手机号,最开始我也是那么整的后来就是特别的慢我又改成了找到一位数字直接加十看看第十一位是不是数字,再后来那一阵子总是听别人说正则两个字一打听才知道原来世界上还存在着这么个东西 就又去学习正则表达式然后看了很长时间还是啥也没弄明白都是后面去现问的。至于姓名呢还是很明显的因为前面是有逗号的所以只要找到逗号然后把逗号之前的都截取出来就结了。最困难的也就是地址了,最开始我没怎么仔细看题我以为只有省级行政单位会有缺少行政划分名字不曾想后来发现什么都有,而且最开始我也只考虑到特别行政区,省和市这种常见的单位但后来有一天我突然想到了蒙古意识到好像内蒙古叫自治区后来再一想就发现好像在内蒙古不仅有叫什么什么市的还有什么什么旗还有什么什么盟,这样我前面想的就太单薄了。后来我的解决办法就是去问问别人都是怎么搞的。不知道是什么原因我就没看见有人用C++,最后从思路上有人告诉我去网上找那种全国所有市镇的文件然后全部搞下来,说白了就是穷举。
大概就是这样,最后还是有那种特殊的地址不行。

性能

测试

地址只举一例
李四,福建省福州13756899511市鼓楼区鼓西街道湖滨路110号湖滨大厦一层.
[{"姓名"':"李四","手机":"13756899511","地址":["福建省","福州市","鼓楼区","鼓西街道", "湖滨路110号湖滨大厦一层"]}
张三,福建福州闽13599622362侯县上街镇福州大学10#111.
{"姓名":"张三","手机":"13599622362","地址":["福建省","福州市","闽侯县","上街镇", "福州大学10#111"]}
王五,福建省福州市鼓楼18960221533区五一北路123号福州鼓楼医院.
{"姓名":"王五","手机":"18960221533","地址":["福建省","福州市","鼓楼区","","五一北路123号福州鼓楼医院"]}
小美,北京市东15822153326城区交道口东大街1号北京市东城区人民法院.
{"姓名":"小美","手机":"15822153326","地址":["北京","北京市","东城区","","交道口东大街1号北京市东城区人民法院"]}
小陈,广东省东莞市凤岗13965231525镇凤平路13号.

异常

有些民族自治的行政单位单位和地址不正确的分开,简而言之就是地址抽取的是不对的。

posted @ 2019-09-29 14:45  Andrei_Mihailov  阅读(127)  评论(2编辑  收藏  举报