标签: algorithm dynamic-programming levenshtein-distance edit-distance
字符串x与语言S的编辑距离是x与“最近”字符串y∈S的编辑距离。给定字符串x∈{0,1,...,9,(,),+ ,-,*,/} *,我想找到一种有效的算法来计算x与简单算术表达式的语言之间的编辑距离。我认为我必须像在经典的编辑距离问题中一样使用动态编程,但是在这种情况下,我不知道第二个字符串要与第一个字符串进行比较。我应该以某种方式使用语言限制吗?构造语法图或语法树?谢谢。
P.S .:简单算术表达式的语言S定义为: