}
@Override
public double distance(Vector v1, Vector v2) {
if (v1.size() != v2.size()) {
throw new CardinalityException();
}
double result = 0;
Vector vector = v1.minus(v2);
Iterator<Vector.Element> iter = vector.iterateNonZero();//this contains all non zero elements between the two
while (iter.hasNext()) {