Jaro distance
给定两个文本串,
,他们的Joro距离定义为:
其中:
表示两个字符串中match的字符数
表示文本串长度
表示换位(transpositoins)数目()
求match的字符数:
分别来自,
的字符,当他们相同或者距离小于
,则被认为是match的。
比如:=“DIXON”,
=“DICKSONX”
距离计算出来等于3,则每一次从max(0,i-d)到min(i+d,xLen)的空间内比较(如果从横轴进行比较,xLen表示长度)。最终得到match数。
中的每一个字符都会与
中距离
内的字符进行比较。将所有match的字符串,需要替调换顺序才能匹配的总数除以二就是transpositions的大小
。这里两个字符串中匹配的分别是:"DION",“DION",所以
。
另外 =4,
=8,
则:
网友评论