461. Hamming Distance

Link: https://leetcode.com/problems/di-string-match/

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 < 2^31.

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.

題目翻譯:

兩個整數之間的漢明距離是相應位不同的位置數。

給定兩個整數 x 和 y,計算漢明距離。

程式思路:

幾”個”位元不同就是漢名距離。

class Solution {
public:
    int hammingDistance(int x, int y) {
        int ex = x ^ y;
        int result = 0;
        while(ex != 0)
        {
            if(ex %2 == 1)
            {
               result++;
            }
            ex = ex >> 1;
        }
        return result;
    }
};

  轉載請註明: YuYan's blog 461. Hamming Distance

  目錄