title: Please explain murmur hash?
body: <p>I just found out murmur hash, seems to be the fastest known and quite collision resistant. I tried to dig more about the algorithm or implementation in full source code, but I am having difficulty understanding it. Could someone here explain the algorithm used, or implement it in full source code, preferably in C. I read the C source code from the author website but has no idea, like: What is <code>seed</code>, <code>h</code>, <code>k</code>, <code>m</code>?</p>
  <p>What does this mean? :</p>
  <pre><code>k *= m; 
  k ^= k &gt;&gt; r; 
  k *= m; 
      
  h *= m; 
  h ^= k;
  
  data += 4;
  len -= 4;
  </code></pre>
  <p>Reference : <a href="http://murmurhash.googlepages.com/" rel="nofollow noreferrer">http://murmurhash.googlepages.com/</a></p>