java - 用于近似字符串匹配的示例 java 代码或用于近似字符串匹配的 boyer-moore 扩展

标签 java algorithm dynamic-programming string-matching approximate

我需要在音乐片段中找到 1.mismatch(错误演奏的音符)、2.insertion(额外演奏的音符)和 3.deletion(遗漏的音符)(例如存储在表中的音符音高 [字符串值])针对引用音乐作品。

这可以通过精确的字符串匹配算法或动态规划/近似字符串匹配算法来实现。但是我意识到,由于识别不匹配、插入、删除注释,近似字符串匹配更适合我的问题。或 Boyer-moore 的扩展版本以支持大约。字符串匹配。

是否有我可以尝试近似字符串匹配的示例 Java 代码的链接?我发现了复杂的解释和方程式——但我希望我能用一些示例代码和简单的解释来做好。或者我可以在 boyer-moore 上找到任何示例 java 代码扩展大约。字符串匹配?我理解 boyer-moore 的概念,但是在调整它以支持大约。字符串匹配(即支持不匹配、插入、删除)。

还有什么是最有效的大约。字符串匹配算法(如精确字符串匹配算法中的 boyer-moore)?

非常感谢任何见解/建议。 非常感谢

最佳答案

您可以从 approximate string matching 上的维基百科页面开始.

问题是这一个复杂的领域,简单地查看/复制一些示例代码可能无法帮助您理解正在发生的事情。

编辑 - 此外,我看不出 Boyer-Moore 将如何适应近似字符串匹配。

关于java - 用于近似字符串匹配的示例 java 代码或用于近似字符串匹配的 boyer-moore 扩展,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3034351/

相关文章:

c++ - 表示小波的数据结构

algorithm - 从文件中搜索代码段

java - 带有动态文本的正则表达式

java - 增加 Integer 变量不会影响引用同一对象的另一个

java - getResourceAsStream 方法返回 null InputStream

algorithm - 高效地并行排序多个字符串以进行展示

algorithm - DAG 第 K 最短路径动态规划

algorithm - 动态规划的递归求解

python - 动态选择从哪个子类继承方法?

java - 无法运行程序 "/Applications/Utilities/Terminal.app": error=13, 权限被拒绝