Hamming距离
作者:互联网
两个整数的Hamming距离是对应比特位不同的个数。
给定两个整数x和y,计算两者的Hamming距离。
样例
样例1
输入: x = 1 和 y = 4
输出: 2
解释:
1的二进制表示是001
4的二进制表示是100
共有2位不同
样例2
输入: x = 5 和 y = 2
输出: 3
解释:
5的二进制表示是101
2的二进制表示是010
共有3位不同
注意事项
0 ≤ x
, y
< 231
class Solution {
public:
/**
* @param x: an integer
* @param y: an integer
* @return: return an integer, denote the Hamming Distance between two integers
*/
int hammingDistance(int x, int y) {
// write your code here
int num = x ^ y;
int count = 0;
while(num)
{
count++;
num = num & (num-1);
}
return count;
}
};
标签:return,int,距离,二进制,num,Hamming,integer 来源: https://blog.csdn.net/weixin_41791402/article/details/99638974