首页 > 代码库 > 461. Hamming Distance

461. Hamming Distance

The Hamming distance between two integers is the number of positions at which the corresponding bits are different.

Given two integers x and y, calculate the Hamming distance.

Note:
0 ≤ xy < 231.

Example:

Input: x = 1, y = 4Output: 2Explanation:1   (0 0 0 1)4   (0 1 0 0)       ?   ?The above arrows point to positions where the corresponding bits are different.

统计一个二进制数中 1 的个数。之前在编程之美中看到 用这种方法判断 :x = x&( x - 1)  

class Solution {public:    int hammingDistance(int x, int y) {        int xy=x^y;        int dis=0;        while(xy)        {            xy=xy&(xy-1);            dis++;        }        return dis;    }};

 

461. Hamming Distance