题目概述:
给定两个整数,计算他们的汉明距离(两个等长字符串中对应位置不同字符的个数)。
思路:
十进制转化为二进制过程中判断每一位是否相同。
示例:
Input: x = 1, y = 4 Output: 2 Explanation: 1 (0 0 0 1) 4 (0 1 0 0) ↑ ↑ The above arrows point to positions where the corresponding bits are different.
代码:
class Solution { public: int hammingDistance(int x, int y) { int num=0; while(x!=0|y!=0) { if((x%2)!=(y%2)) { num++; } x=x/2; y=y/2; } return num; } };