个人项目:论文查重

这个作业属于哪个课程 https://edu.cnblogs.com/campus/gdgy/Networkengineering1834
这个作业要求在哪里 https://edu.cnblogs.com/campus/gdgy/Networkengineering1834/homework/11146
这个作业的目标 实现论文查重,学会使用工具进行代码优化和性能分析

github地址:https://github.com/Zangong-Wu/Zangong-Wu

1.psp表格

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

2、模块接口的设计与实现过程

导入了hanlp库,创建两个类,Readfile读取文件和SimilarityUtil算法实现。

算法思想实现:

把文本中的表面符号去掉并分词,合并分词结果,列出所有的词,统计词频,得到词频构成的向量,计算相似度(两个向量的余弦值)。具体如下:

分词:

合并分词结果,统计词频:

计算相似度:

3.模块接口性能分析

内存、CPU、GC、线程情况

Live Memory

4.异常处理

异常情况: