题目:
两个整数之间的汉明距离指的是这两个数字对应二进制位不同的位置的数目。
给出两个整数 x 和 y,计算它们之间的汉明距离。
注意:
0 ≤ x, y < 231.
//汉明距离:两个数对应二进制位的不同的数目
//将两个值异或,不同二进制位对应的异或值是1
class Solution {
public int hammingDistance(int x, int y) {
int xor = x ^ y;
int distance = 0;
while (xor != 0) {
//模2可以取出最右边对应的二进制位
if (xor % 2 == 1)
distance += 1;
xor = xor >> 1;
}
return distance;
}
}
https://leetcode-cn.com/problems/hamming-distance/solution/yi-ming-ju-chi-by-leetcode/