lintcodeleetcode由易至难第5题:Hamming Distance

xiaoxiao2021-02-28  131

Problem:

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 ≤ x, y < 231.

Example:

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. Code1:

public class Solution { public int hammingDistance(int x, int y) { return Integer.bitCount(x ^ y); } } Code2;

public class Solution { public int hammingDistance(int x, int y) { int n = (x ^ y); int count = 0; while(n > 0){ n &= n-1;//除去最右边的1 count++;//得到n里面1的个数 } return count; } }

转载请注明原文地址: https://www.6miu.com/read-20342.html

最新回复(0)