461. 汉明距离(简单) 思路 首先,将两个数字异或,得到的数字的 1 的个数就是最终答案。 那么如何统计 1 的个数呢? 只需要将这个数与 1 相与,就能判断最低位是不是 1 ,然后将该数字左移一位,以此能判断下一个位置是不是 1 。重复上述操作,直到这个数字为 0,说明遍历结束。 代码 class Solution { public: int hammingDistance(int x, int y) { int diff = x ^ y; int ans = 0; while(diff){ ans += diff & 1; diff >>= 1; } return ans; } };