位运算——Hamming Distance
Posted ADong
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了位运算——Hamming Distance相关的知识,希望对你有一定的参考价值。
https://leetcode.com/problems/hamming-distance/#/description
输入:两个整数x,y,且0 ≤ x, y < 231。
输出:x,y的二进制表示,不同的有几位。
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.
1 public class Solution { 2 public int hammingDistance(int x, int y) { 3 int count = 0; 4 for(int i=0; i<32; i++) { 5 if((x & 1) != (y & 1)) { 6 count++; 7 x = x >> 1; 8 y = y >> 1; 9 } else { 10 x = x >> 1; 11 y = y >> 1; 12 } 13 } 14 return count; 15 } 16 }
以上是关于位运算——Hamming Distance的主要内容,如果未能解决你的问题,请参考以下文章
[LeetCode] 477. Total Hamming Distance(位操作)
LeetCode-461. Hamming Distance
477 Total Hamming Distance 汉明距离总和