ivory.lsh.data
Class Signature
java.lang.Object
ivory.lsh.data.Signature
- All Implemented Interfaces:
- Comparable, Writable, WritableComparable
- Direct Known Subclasses:
- MinhashSignature, NBitSignature, SixtyFourBitSignature
public abstract class Signature
- extends Object
- implements WritableComparable
Abstract class for signatures.
- Author:
- ferhanture
Signature
public Signature()
Signature
public Signature(int size)
Signature
public Signature(Signature p)
createSignature
public static Signature createSignature(Class subClass,
int size)
getLongestPrefix
public int getLongestPrefix(Signature signature)
getSubSignature
public abstract Signature getSubSignature(int start,
int end)
getSubSignature
public abstract Signature getSubSignature(int start,
int end,
Signature subSign)
hammingDistance
public abstract int hammingDistance(Signature signature)
- Parameters:
signature -
- Returns:
- compute hamming distance between this object and signature.
hammingDistance
public abstract int hammingDistance(Signature signature,
int threshold)
- Parameters:
signature - threshold -
- Returns:
- compute hamming distance between this object and signature. early terminate if distance exceeds threshold.
perm
public abstract Signature perm(ArrayListOfIntsWritable permutation)
- Parameters:
permutation -
- Returns:
- permute this object w.r.t permutation object and return permuted signature
perm
public abstract void perm(ArrayListOfIntsWritable permutation,
Signature permSign)
- Parameters:
permutation - permute this object w.r.t permutation object and save permuted signature in permSign
size
public abstract int size()
toString
public abstract String toString()
- Overrides:
toString in class Object