From 4ad34e4b136567c4a3386982ab603a5ed32a90e1 Mon Sep 17 00:00:00 2001 From: Rocky Madden Date: Sun, 7 Oct 2012 03:10:16 -0600 Subject: Moved prefix declaration to below jaro, as this should improve performance in some cases. --- .../source/core/scala/org/hashtree/stringmetric/JaroWinklerMetric.scala | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/source/core/scala/org/hashtree/stringmetric/JaroWinklerMetric.scala b/core/source/core/scala/org/hashtree/stringmetric/JaroWinklerMetric.scala index dec2cbe..eefefd4 100755 --- a/core/source/core/scala/org/hashtree/stringmetric/JaroWinklerMetric.scala +++ b/core/source/core/scala/org/hashtree/stringmetric/JaroWinklerMetric.scala @@ -11,8 +11,8 @@ import scala.util.control.Breaks.{ break, breakable } */ object JaroWinklerMetric extends StringMetric { override def compare(charArray1: Array[Char], charArray2: Array[Char]): Float = { - val prefix = charArray1.zip(charArray2).takeWhile(t => t._1 == t._2).map(_._1) val jaro = JaroMetric.compare(charArray1, charArray2) + val prefix = charArray1.zip(charArray2).takeWhile(t => t._1 == t._2).map(_._1) jaro + ((if (prefix.length <= 4) prefix.length else 4) * (0.1f * (1 - jaro))) } -- cgit v1.2.3