문제를 이해하고 있다면 바로 풀이를 보면 됨
전체 코드로 바로 넘어가도 됨
마음대로 번역해서 오역이 있을 수 있음
두 정수 사이의 해밍 거리는 대응하는 비트들이 서로 다른 위치의 개수이다.
두 정수 x와 y가 주어졌을 때, 두 정수 사이의 해밍거리를 반환해라.
#1
Input: x = 1, y = 4
Output: 2
Explanation:
1 (0 0 0 1)
4 (0 1 0 0)
#2
Input: x = 3, y = 1
Output: 1
class Solution {
public int hammingDistance(int x, int y) {
int cnt = 0;
int n = x ^ y;
while(n != 0){
n = n & (n - 1);
cnt++;
}
return cnt;
}
}