首页 > 其他分享 >个人项目

个人项目

时间:2024-03-13 23:33:41浏览次数:13  
标签:10 string 个人 项目 代码 wstring 测试 字符串

这个作业属于哪个课程 软件工程
这个作业要求在哪里 个人项目
这个作业的目标 写一个程序实现文本相似度检测功能,学习用github等工具管理代码,学习使用工具分析代码,测试程序
GitHub地址 gitee

PSP表格

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

程序设计

程序有4个函数
1.初始化函数,主要设置信号与指定字体。
void init()
2.计算函数,返回字符串s和t的查重率。
double check(wstring& s, wstring& t)
3.读取文件,将文件读到内存的字符串中。
bool readFile(string filePath, wstring& s)
4.用于调用2和3,orig和edit为文件名
double ccount(string orig, string edit)

算法设计

将原字符串用c++的map容器放入,格式如python的zidian({"文字",字符串的位置下标}),然后测试字符串在倒序插入到vector容器arr中,将问题类比为最大上升子序列,然后用dp,贪心等等做法查找最大上升子序列,详见README.md文件。

计算模块接口部分的性能改进

内存使用并不算多。
image

image
占用资源最多的是这个lower_bound函数,这是个查找函数,占用多在所难免。
image

计算模块部分单元测试展示

测试:
用测试文件分别测试一遍,总时长在8-10秒内。
image

计算模块部分异常处理说明

程序在window和linux都能正常运行(不同版本的glibc可能不行),唯一有问题的是init()中指定文字的代码,如果计算机没有相应的文字包或者某些其他不知道的原因,可能会报错,这个在代码中有标志出来

点击查看代码
	if (argc != 4)
	{
		cout << "Using ./main orig_path edit_path output_path\n";
		cout << "Example: ./main orig.txt orig_0.8_dis_1.txt out.txt\n\n";
		cout << "出现错误如下,方法:linux下:export LC_ALL=\"C\"  or 没安装中文包\n";
		cout << "terminate called after throwing an instance of 'std::runtime_error'\n";
		cout << "what(): locale::facet::_S_create_c_locale name not valid\n";
	}

image
linux运行图:
image

标签:10,string,个人,项目,代码,wstring,测试,字符串
From: https://www.cnblogs.com/lip123/p/18071661

相关文章

  • 基于SSM的协同过滤算法的电影推荐系统(有报告)。Javaee项目。ssm项目。
    演示视频:基于SSM的协同过滤算法的电影推荐系统(有报告)。Javaee项目。ssm项目。项目介绍:采用M(model)V(view)C(controller)三层体系结构,通过Spring+SpringMvc+Mybatis+Vue+Layui+Elementui+Maven来实现。MySQL数据库作为系统数据储存平台,实现了基于B/S结构的Web系统。报......
  • 个人项目
    这个作业属于哪个课程https://edu.cnblogs.com/campus/gdgy/SoftwareEngineering2024这个作业要求在哪里https://edu.cnblogs.com/campus/gdgy/SoftwareEngineering2024/homework/13136这个作业的目标完成论文查重的个人项目,包括使用PSP评估,设计模块,编写代码并进行......
  • 个人项目
    这个作业属于哪个课程软件工程4班这个作业要求在哪里作业要求这个作业的目标实现个人项目:论文查重这个作业的GitHub地址:作业地址PSP2.1PersonalSoftwareProcessStages预估耗时(分钟)实际耗时(分钟)Planning计划1515Estimate估计这个任务需要......
  • 个人项目
    这个作业属于哪个课程https://edu.cnblogs.com/campus/gdgy/SoftwareEngineering2024这个作业要求在哪里https://edu.cnblogs.com/campus/gdgy/SoftwareEngineering2024/homework/13136这个作业的目标使用算法实现论文查重,学习使用测试工具和性能分析工具,加深对PSP......
  • 个人项目
    这个作业属于哪个课程https://edu.cnblogs.com/campus/gdgy/SoftwareEngineering2024这个给作业要求在哪里https://edu.cnblogs.com/campus/gdgy/SoftwareEngineering2024/homework/13136这个作业的目标论文查重一、github链接:https://github.com/githdx/31220......
  • 从JavaSE到项目部署——Java基础学习第八天(Java面向对象编程初级)
    目录一、类与对象(OOP)——类        1、类与对象概述    2、对象在内存中的存在形式     3、属性/成员变量/field(字段)     4、对象创建和使用    5、对象创建过程二、方法    1、方法基本演示    2、方......
  • 【Django开发】前后端分离美多商城项目第1篇:美多商城【附代码文档】
    美多商城项目4.0文档完整教程(附代码资料)主要内容讲述:美多商城,项目准备,商业模式介绍,开发流程,需求分析,项目架构,创建工程,1.在git平台创建工程1.B2B--企业对企业,2.C2C--个人对个人,3.B2C--企业对个人,4.C2B--个人对企业,5.O2O--线上到线下,6.F2C--工厂到个人,7.B2B2C--企业--企业--......
  • 作页二:个人项目
    这个作业属于哪个课程软件工程2024-广东工业大学这个作业要求在哪里软件工程2024-班级博客这个作业的目标开发个人项目,实现论文查重githubgitcode仓库地址:https://gitcode.com/wdwwdw/3122004405/tree/main计算模块接口的设计与实现过程使用hcaks对中......
  • Vite构建的前端项目在执行 "npm run dev" 命令时报错 "failed to load vite.config.ts
    报错信息:Failedtoloadconfigfromxx/.../xx/vite.config.tserrorduringbuild:Error:Youinstalledesbuildforanotherplatformthantheoneyou'recurrentlyusing.Thiswon'tworkbecauseesbuildiswrittenwithnativecodeandneedstoinstal......
  • 个人项目
    主管作业属于哪个课程https://edu.cnblogs.com/campus/gdgy/SoftwareEngineering2024/这个作业要求在哪里https://edu.cnblogs.com/campus/gdgy/SoftwareEngineering2024/homework/13136这个作业的目标实现自己的第一个个人项目,增强对项目开发的理解github链接......