首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >序列校正用n-克

序列校正用n-克
EN

Stack Overflow用户
提问于 2009-06-19 20:41:35
回答 1查看 142关注 0票数 0

很抱歉有个难题。

我有大量的序列需要通过/或添加数字或替换它们(从不移除任何内容)进行更正,如下所示:

  • 1,2,3 => 1,7,4 3
  • 4,,5,6 => 4,4,5,6
  • 4,7,8,9 => 4,7,8,9
  • 4,7 => 4,8
  • 4,7,1 => 4,7,2

它以一个填充的原始序列和一个样本校正开始。

我希望能够通过计算被校正的不同n克的频率来自动校正序列,第一个样本将变成

  • 1=>1
  • 2=>7
  • 3=>3
  • 1,2=>1,7
  • 2,3=>7,4,3
  • 1,2,3=>1,7,4,3

我收集这些n克校正的频率,我正在寻找一种方法来计算一个新输入的最佳方法,这个输入可能在样本数据中,也可能不在样本数据中。

这似乎与SMT类似。

EN

回答 1

Stack Overflow用户

发布于 2009-06-19 21:25:34

根据替换的长度和发生的次数为已知的替换分配一个分数。天真地,我建议将这个分数与长度的平方成正比(在大多数情况下,更长的匹配比较少见)和出现次数的平方根,这样一个4项序列的权重与经常发生的2项序列的权重相同。这需要根据你的实际情况进行调整。

给定长度为M的序列,有N个长度为1到M的子字符串,其中N=M*(M+1)/2,因此如果字符串相当短,则可以遍历每个子字符串并查找可能的替换。我认为,从这些子字符串中合成整个字符串的方法的数量也与M^2成正比。

对于每一个可能由子字符串组成的原始字符串,将每个子字符串的最佳(最高分数)替换的总分加起来。

总分最高的作文(考虑到我对这个过程的假设)将是“最好的”替换后的结果。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1019953

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档