选定的b问题
第一阶段比赛问题下载: https://www.lanzous.com/i3vnsvg
建立了两个模型、词典检索算法选择模型、算法优化模型。
问题1 .假设文本随机生成2 .假设构成字符的20个字符为a ̄t3 .假设置换错误只出现在片段的开头,所以搜索的片段长度在11 ̄21之间
模型计划使用c随机数引擎和分布类型生成文本,每个段的长度随机为5000到8000。 调整文本(随机生成的文本几乎找不到11~21个字符的相同内容) )。
模型采用BF、动态规划、KMP三种方法,直接运行程序检索同一字符串,将检索结果保存为txt文件,同时记录运行时间、内存消耗、资源使用量,初步高效。 改变每段文本的长度,再次记录上面三个记录,将统计表作为附件,绘制论文,用MATLAB拟合数据,得到方程,绘制与方程相关的三维图像。 比较了KMP是最佳算法。
模型优化KMP的next数组,如果字符不匹配,next数组为character [ I ]=character [ next [ I-1 ]; 的迭代查询。 next[i]=next[next[i-1]]; 合并相同的数据。 再次选择第一个型号的测试文本,并将测试程序的运行时间和内存消耗与传统的KMP算法进行比较。
程序时间大概为100秒~200秒左右,占用内存似乎为150MB~300MB左右。
方法简单,思路也比较清楚,这个问题的难点是模型和相关方程的建立,这个问题的附件我们给了很多,附录给了核心代码。
第一阶段代码下载:点击下载
转载于:https://www.cn blogs.com/mayfly-nymph/p/10754783.html