私は最近、このコードスニペットfound on Wikipedia出くわしと何が起こっているかのよういくつかの明確化を得るために思っている:ハミング距離直観
int hamming_distance(unsigned x, unsigned y)
{
int dist = 0;
unsigned val = x^y;
// Count the number of bits set
while (val != 0)
{
// A bit is set, so increment the count and clear the bit
dist++;
val &= val - 1;
}
// Return the number of differing bits
return dist;
}
入力の両方にXOR演算を実行する意義は何ですか?
私はXORがこのアルゴリズムの単純な部分だと言っています。 – harold