Interface EditDistance<R>

Type Parameters:
R - The type of similarity score unit used by this EditDistance.
All Superinterfaces:
SimilarityScore<R>
All Known Implementing Classes:
CosineDistance, HammingDistance, JaccardDistance, JaroWinklerDistance, LevenshteinDetailedDistance, LevenshteinDistance, LongestCommonSubsequenceDistance

public interface EditDistance<R>
extends SimilarityScore<R>
Interface for Edit Distances.

An edit distance is a formal metric on the Kleene closure (X<sup>*</sup>) over an alphabet (X). Note, that a metric on a set S is a function d: [S * S] -&gt; [0, INFINITY) such that the following hold for x,y,z in the set S:

  • d(x,y) &gt;= 0, non-negativity or separation axiom
  • d(x,y) == 0, if and only if, x == y
  • d(x,y) == d(y,x), symmetry, and
  • d(x,z) &lt;= d(x,y) + d(y,z), the triangle inequality

This is a BiFunction<CharSequence, CharSequence, R>. The apply method accepts a pair of CharSequence parameters and returns an R type similarity score.

Since:
1.0
  • Method Summary

    Modifier and Type Method Description
    R apply​(CharSequence left, CharSequence right)
    Compares two CharSequences.
  • Method Details

    • apply

      R apply​(CharSequence left, CharSequence right)
      Compares two CharSequences.
      Specified by:
      apply in interface SimilarityScore<R>
      Parameters:
      left - the first CharSequence
      right - the second CharSequence
      Returns:
      The similarity score between two CharSequences