个人项目:论文查重
个人项目,论文查重
这个作业属于哪个课程 | https://edu.cnblogs.com/campus/gdgy/Networkengineering1834 |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/gdgy/Networkengineering1834/homework/11146 |
这个作业的目标 | <实现论文查重算法,学会使用PSP表格,单元测试,掌握代码质量检测工具和性能分析工具> |
一、github、
github仓库地址 : https://github.com/moxiy/moxii
二、PSP表格
PSP2.1 | Personal Software Process Stages | 预估耗时(分钟 ) | 实际耗时(分钟) |
---|---|---|---|
Planning | 计划 | 30 | 45 |
· Estimate | · 估计这个任务需要多少时间 | 10 | 10 |
Development | 开发 | 360 | 450 |
· Analysis | · 需求分析 (包括学习新技术) | 60 | 60 |
· Design Spec | · 生成设计文档 | 0 | 0 |
· Design Review | · 设计复审 | 0 | 0 |
· Coding Standard | · 代码规范 (为目前的开发制定合适的规范) | 0 | 0 |
· Design | · 具体设计 | 60 | 120 |
· Coding | · 具体编码 | 240 | 300 |
· Test | · 测试(自我测试,修改代码,提交修改) | 60 | 90 |
Reporting | 报告 | 60 | 90 |
· Test Repor | · 测试报告 | 60 | 60 |
· Size Measurement | · 计算工作量 | 5 | 5 |
· Postmortem & Process Improvement Plan | · 事后总结, 并提出过程改进计划 | 30 | 30 |
· 合计 | 915 | 1260 |
三、计算模块接口的设计与实现过程
1.算法原理
一开始是准备用jieba分词,再用余弦算法计算重复率的,但是由于各种问题,最后选择了另一种算法——最长公共子序列。所谓子序列,即一个给定的序列的子序列,也就是将给定序列中零个或多个元素去掉之后得到的结果,子序列只需要保持相对顺序一致,并不要求连续。
具体算法参考及相关图解参考https://blog.csdn.net/hrn1216/article/details/51534607
2.程序流程
四、接口部分的性能改进
五、测试结果