首页 > 编程语言 >第一次个人编程项目

第一次个人编程项目

时间:2023-09-17 22:26:11浏览次数:49  
标签:编程 hash 个人 实现 30 50 第一次 40 3.1

这个作业属于哪个课程 计科21级12班
这个作业要求在哪里 个人项目
这个作业的目标 熟悉个人软件开发流程
gitee:https://gitee.com/jiajidong/3121004864/tree/master/

1.PSP表格

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

2.需求分析

设计一个查重算法,可以用SimHash算法实现,实现文档对比,查重。

3.模块接口的设计与实现

3.1.1 FileInput类

作用:读取文本内容
类方法:readString

3.1.2 main类

运用包内定义的类方法,实现对文本的读取,分词,hash,加权,合并,降维以及计算汉明距离,通过距离最终得到相似度

3.1.3 SimHash类

主要类方法:simhHash,hash,hammingDistance,getDistance,subByDistance
其中simHash实现SimHash算法,hash实现对特征向量的hash,hammingDistance实现加权,getDistance实现合并与降维,subByDistance实现分组检查

3.2 流程图

4.性能分析


5.模块异常分析

当读取文件不存在时会报错

标签:编程,hash,个人,实现,30,50,第一次,40,3.1
From: https://www.cnblogs.com/ac34244/p/17709691.html

相关文章

  • 个人项目-java实现论文查重(更新中)
    本次作业GitHub项目链接:https://github.com/zzz-muxin/PlagiarismCheck作业详情这个作业属于哪个课程工程概论这个作业要求在哪里作业要求这个作业的目标学会利用GitHub进行项目开发,完成一个工程项目开发的详细过程需求题目:论文查重描述如下:设计一个论......
  • 个人项目
    这个作业要求在哪里个人项目-论文查重算法这个作业的目标1、完成PSP表格。2、完成“论文查重算法”的设计并进行测试。3、代码签入Github中。4、编写博客记录。GitHub链接仓库地址计算模块接口TxtIOUtils类readTXT读取文件,采用java中同步阻塞的IO字节流......
  • 软件工程第一次个人项目
    这个作业属于哪个课程软件工程这个作业要求在哪里https://edu.cnblogs.com/campus/gdgy/CSGrade21-34/homework/13023这个作业的目标完成一个个人项目:论文查重算法Github链接https://github.com/sssscccchhhh/3121005169.gitPSP表格PSP2.1PersonalSof......
  • 33. 数据库编程
    一、数据库编程接口  程序运行的时候,数据都是在内存中的。当程序终止的时候,通常都需要将数据保存到磁盘上。为了便于程序保存的读取数据,并能直接通过条件查询跨快速查询指定的数据,就出现了数据库(Database)这种专门用于集中存储和查询的软件。  在Python中提供了数据库连接......
  • 《Java编程思想第四版》学习笔记28--关于StreamTokenizer
    //:SortedWordCount.java//Countswordsinafile,outputs//resultsinsortedform.importjava.io.*;importjava.util.*;importc08.*;//ContainsStrSortVectorclassCounter{privateinti=1;intread(){returni;}voidincrement(){i++;}}pu......
  • 利用SharedArrayBuffer进行多线程编程
    利用SharedArrayBuffer进行多线程编程在现代Web应用程序中,性能是一个至关重要的因素。为了提高Web应用程序的性能,我们经常需要执行并行计算,例如图像处理、音频处理或数据分析。在这种情况下,多线程编程是一种强大的工具,它允许我们充分利用多核处理器。然而,多线程编程并不是一件容易......
  • 软工个人项目
    软件工程21计科四班作业要求https://edu.cnblogs.com/campus/gdgy/CSGrade21-34/homework/13023仓库地址https://github.com/2077435277/introduction_myselfPSP表格PSP2.1PersonalSoftwareProcessStages预估耗时(分钟)实际耗时(分钟)Planning计划......
  • 一起动手打造个人娱乐级linux
    我们使用电脑,一直以来用的都是windows,但是对于像我这种爱折腾的人来说,尝试使用linux系统应该是一种不错的体验。说到linux,许多人可能都没听过,或者知道的人对它印象是这样的:然而,linux发展这么久,桌面应用也已经发展得非常成熟了,现在我们linux可以是这样的:ubuntu16.04archlinux......
  • 30分钟快速搭建并部署一个免费的个人博客
    前言现如今网上有许多完善的博客平台,如博客园、掘金、思否、知乎等。有人会说为什么现在网上有这么多成熟的博客平台,你还要浪费时间搭建一个自己的博客系统呢?首先我相信每一个程序员都会想要拥有一个属于自己的博客系统,其次使用Docsify能够快速构建一个自己的博客文档系统,最后我......
  • Socket编程:htons()、htonl()、ntohs()、ntohl()
    前言在计算机网络学到Socket编程的时候,自己在Linux下用C语言试验了一番,发现了这四个古怪的函数:htons()、htonl()、ntohs()、ntohl()。查阅资料得知,这是涉及到网络字节序与主机字节序的转换。字节序,顾名思义字节的顺序,就是大于一个字节类型的数据在内存中的存放顺序。主机字节......