刚开始第二阶段了吧,因为一些事情没去参加第二阶段。这里就给大家提供一些思路吧。

这道题看着像是在第一阶段上的深入,实际上方法都一样的。我们先分析一遍论文吧。

论文分析

首先第一句话的文本获取,不用多说,编程直接和第一阶段一样,随机生成(C/C++,MATLAB等等百度随机数生成,个人用的分布引擎,然后写入文档,30段随机文本就生成了)。

OK,后面的我们提取一下要求:

  1. 片段长度15
  2. 错误发生概率1/5
  3. 插入,替换,删失
  4. 每个错误只涉及一个字符

敲黑板了,“造”数据,先造出符合上面第一个要求的片段,发生次数和片段个数自己控制好。接着,让第三个要求的概率为1/5左右,涉及一个字符。这里,我们结果就出来了。

首先每个字符的错误为1/5左右,那么长度为15的片段,每个错误出现的长度为3左右。我们可以将错误分成插入错误,替换错误,删失错误分别进行处理,再进行对比,找出的相同字符串就是我们需要的字符串。

在进行对比时,我们可以引入一个“标记m”,记录两个字符片段进行对比时。当字符不同时,m++,下一个在不同m++,在此期间,我们需要进行判断m是否大于我们设定的一个数n(3左右),可以称为容错数n,若大于,我们进行下一个字符串比较,若小于继续进行这个字符串下一个字符的比较,当字符再次相同时,m=0重新记录。

至于下面说的,不知道长度怎么办?那长度未知,首先我们要进行分析,尽量的缩短长度的范围,再者对算法的遍历方法进行改进,具体方法是使用某个算法,自己选择,减少遍历次数,你们组的编程肯定知道的。

模型介绍

第一个模型(算法模型)

找到几种算法,进行分析+比较搜索效率,找到当前最优算法

在对于三种错误进行筛选时,我们需要对每种错误进行调整,使得我们的结果更加准确,假设下面的错误都发生在子串当中。我举例错误只举了一次错误,实际不止,方法相同。

1.删失错误

这时候,子串和预期答案,必定少了一个,当我们进行字符对比时,遇到删失错误的位置,我们的子串比较字符位置不变,母串比较字符向后移动一位,再进行对比,且m++,因为子串少了一位,所以子串最后一位实际没有参加对比,这一位的不同我们不计入m。

2.替换错误

发生这种错误时,子串和母串的长度是不变的,因此我们只需要记录标记m,进行判断就行。

3.插入错误

这种错误相当于,子串多了一位,这时候,在遇到发生插入错位位置的时候,我们将子串比较字符向后移动一位,m++。这种错误,以子串为主,相当于子串少了一位,因此我们可以将母串的最后一位arr[i]和子串的brr[i+1],子串相当于增加了一位进行比较,需要计入m。

把这个问题分成三个部分解决,每个“错误”筛选出的片段,总的实际上就是我们所需要的片段。也就是,已知三个集合,求这三个集合的并集,但这中间肯定存在误差,搜索的字符串比我们实际的要多,这个问题可以放到优化模型中提出。

第二个模型(优化模型)

实际上我们需要优化的地方就是,我们在分别筛选时,筛选的字符串肯定比实际的多,就算比较之后选出相同的,实际筛选出的也会多,这里优化的就是提高我们三种方法搜索准确率或者对比时如何处理。在这里如果会的话,可以加入一个筛选的模型。

注意:如果大家写不出代码,那就一定流程图写好,写清楚,算法别搞花里胡哨,能解决问题就行。

至于具体如何填充论文,还有代码,就要靠各位自己加油了。有问题的话评论留言,这几天我都会看。

后面有补充的话,我都会放到这篇博客上。

2019/5/18 14:17 更新几种错误的处理方法和第二问的未知长度的方法等

2019/5/18 17:17 更新了三种错误解决后的处理方法。(在明天会给大家说一些这篇论文中应该着重注意的地方,大家注意关注。

觉得博客有帮助的朋友可以给博主点个赞,对建模感兴趣的朋友可以关注一下博主,你们的支持就是我最大的动力!

转载于:https://www.cnblogs.com/Mayfly-nymph/p/10884155.html

2019第十二届“认证杯”数学建模(第二阶段)相关推荐

  1. 2019第十六届研究生数学建模竞赛--跨越五年从本科省二到研赛国一

    本作品采用知识共享署名-相同方式共享 4.0 国际许可协议进行许可. 2019第十六届研究生数学建模竞赛--跨越五年从本科省二到研赛国一 感谢 序言 本科建模竞赛的失败经历 研究生建模竞赛的成功经历 ...

  2. 2019年国赛高教杯数学建模E题薄利多销分析解题全过程文档及程序

    2019年国赛高教杯数学建模 E题 薄利多销分析 原题再现   "薄利多销"是通过降低单位商品的利润来增加销售数量,从而使商家获得更多盈利的一种扩大销售的策略.对于需求富有弹性的商 ...

  3. 2019年国赛高教杯数学建模C题机场的出租车问题解题全过程文档及程序

    2019年国赛高教杯数学建模 C题 机场的出租车问题 原题再现   大多数乘客下飞机后要去市区(或周边)的目的地,出租车是主要的交通工具之一.国内多数机场都是将送客(出发)与接客(到达)通道分开的.送 ...

  4. 2022 年第十二届 MathorCup 高校数学建模挑战赛D题思路(移动通信网络站址规划和区域聚类问题)

    目录 一.前言 二.问题背景 三.问题 四.解题思路 (1)针对问题1: (2)针对问题2: (3)针对问题3: 五.附上几个典型代码 (1)K-means算法 (2)遗传算法 (3)模拟退火算法 一 ...

  5. 2023年认证杯数学建模网络挑战赛B题考订文本思路分析

    2023 年 "认证杯"数学中国数学建模网络挑战赛 第一阶段 B 题 考订文本 古代文本在传抄过程中,往往会出现种种错误,以至于一部书可能流传下 来多种版本.在文献学中,错误往往被 ...

  6. 2022小美赛认证杯数学建模完整成品

    2022年第十一届"认证杯"小美赛数学中国数学建模国际赛 2022年数学中国数学建模国际赛将于2022年12月02日上午8时-2022年12月06日上午8时举行. 比赛时间:(北京 ...

  7. 2023认证杯数学建模挑战赛C题心脏危险完整原创论文讲解

    大家好呀,从发布赛题一直到现在,总算完成了认证杯完整的成品论文. C题论文共37页,一些修改说明7页,正文26页,附录4页. 认证杯难度比起mathorcup会小一些,本题主要难度是数据量比较大,片段 ...

  8. 2022年小美赛“认证杯”数学建模ABCD题初步分析选题建议

    ​ 2022年小美赛数学建模赛题已经发布: A题 翼龙是如何飞行的 B题 序列的遗传过程 C题 对人类活动进行分类 D题 是否应长期禁止野生动物贸易 总体来说,从赛题难度来看B>A>C&g ...

  9. 2023第十六届“认证杯”数学建模网络挑战赛第一阶段比赛经历分享

    个人名片:

最新文章

  1. 安装quagga 软路由
  2. 天体运行轨迹_海王星轨道外发现139个新天体, 能揭开太阳系第九颗行星奥秘?...
  3. 文献学习(part23)--双向聚类方法综述
  4. mysql master线程 fork_多线程中fork的坑
  5. ios沙箱模式开启_iOS我眼中的沙盒机制
  6. 系统服务器地云盘上,系统服务器地云盘上
  7. 一个完整的汇编程序结构
  8. 2.1 Hadoop概述
  9. Android 高级学习心得及项目要点
  10. ps上的字体可以商用吗?PS怎么方便的使用免费商用字体?
  11. 深度学习笔记:05手算梯度下降法,详解神经网络迭代训练过程
  12. C++用*和空格输出一个正方形及其对角线
  13. worldPress数据库
  14. Redis基本使用|基本命令|redis事务|Jedis|持久化|订阅|集群|
  15. vue——双层循环嵌套
  16. java常见手写sql面试题_java sql常见面试题
  17. 前置自增加++与后置自增加++区别,前后自减同理
  18. 计算机集成制造系统 刊物界别,基于多传感器的高速CNC机床集成监控系统设计.pdf...
  19. 从Dicom的xml文件中获取结节坐标并生成mask
  20. Photoshop 2018 学习笔记 1.2 PS工作界面

热门文章

  1. 线程的同步之Synchronized在单例模式中的应用
  2. 软件评测-信息安全-应用安全-资源控制-用户登录限制(中)
  3. 海康威视连续采图设置ROI局部显示_c#
  4. 深入理解委托——为什么C#要引入委托
  5. python asyncio回调函数_最近用 Python 的 asyncio,有好多不懂。。
  6. celery 停止任务_celery异步任务框架
  7. 新手学电脑入门教程_炒股技巧大全丨炒股新手怎样才能长期稳定盈利
  8. mysql事务在提交后才发送给数据库执行_从一个线上问题分析binlog与内部XA事务提交过程...
  9. linux下glew例子,一个简单的GLSL Shader例子
  10. 什么是java一句话一个例子_一句话讲清楚什么是JavaEE