说明
levenshtein ( string
$str1
, string $str2
) : intlevenshtein ( string
$str1
, string $str2
, int $cost_ins
, int $cost_rep
, int $cost_del
) : int编辑距离,是指两个字串之间,通过替换、插入、删除等操作将字符串str1
转换成str2
所需要操作的最少字符数量。 该算法的复杂度是 O(m*n),其中 n 和 m 分别是str1
和str2
的长度 (当和算法复杂度为O(max(n,m)**3)的similar_text()相比时,此函数还是相当不错的,尽管仍然很耗时。)。
在最简单的形式中,该函数只以两个字符串作为参数,并计算通过插入、替换和删除等操作将str1
转换成str2
所需要的操作次数。大理石机械构件维修厂家
第二种变体将采用三个额外的参数来定义插入、替换和删除操作的次数。此变体比第一种更加通用和适应,但效率不高。
参数
str1
-
求编辑距离中的其中一个字符串
str2
-
求编辑距离中的另一个字符串
cost_ins
-
定义插入次数
cost_rep
-
定义替换次数
cost_del
-
定义删除次数
返回值
此函数返回两个字符串参数之间的编辑距离,如果其中一个字符串参数长度大于限制的255个字符时,返回-1。