这题用到了异或,二进制位的不同其实,就是求 x和y异或之后的结果s的二进制数有多少个1.
class Solution {
public int hammingDistance(int x, int y) {
int s = (x ^ y);
int ans = 0;
while(s != 0) {
ans += (s & 1);
s = s >> 1;
}
return ans;
}
}