AbstractVector.hashCode() should not care about the order of iteration over 
elements
------------------------------------------------------------------------------------

                 Key: MAHOUT-207
                 URL: https://issues.apache.org/jira/browse/MAHOUT-207
             Project: Mahout
          Issue Type: Improvement
          Components: Matrix
    Affects Versions: 0.2
         Environment: all
            Reporter: Jake Mannix
            Priority: Minor
             Fix For: 0.3


As was discussed in MAHOUT-165, hashCode can be implemented simply like this:

{code} 
public int hashCode() {
    final int prime = 31;
    int result = prime + ((name == null) ? 0 : name.hashCode());
    result = prime * result + size();
    Iterator<Element> iter = iterateNonZero();
    while (iter.hasNext()) {
      Element ele = iter.next();
      long v = Double.doubleToLongBits(ele.get());
      result += (ele.index() * (int)(v^(v>>32)));
    }
    return result;
  }
{code}

which obviates the need to sort the elements in the case of a 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to