说明
两个字符串之间的编辑距离是将一个单词转换为另一个单词的最小可能插入,删除或替换次数的函数。
插入和删除的费用为1,替换的费用为2。
例如,之间的距离AB
和A
为1,因为删除费用1和唯一需要的编辑是删除B
字符。
CAR
和之间的距离FAR
为2,因为替换的成本为2。另一种查看方式是一次删除和一次插入。
规则
给定两个输入字符串(但提供时使用您的语言很方便),您的程序必须找到两个字符串之间的最小编辑距离。
您可以假定字符串仅包含字符A-Z
,并且少于100个字符且大于0个字符。
这是代码高尔夫,因此最短的解决方案将获胜。
样本测试用例
ISLANDER, SLANDER
> 1
MART, KARMA
> 5
KITTEN, SITTING
> 5
INTENTION, EXECUTION
> 8
levenshtein
函数将替换视为一次编辑(替换),而不是两次(删除+插入)。