美文网首页
汉明距离

汉明距离

作者: 二进制的二哈 | 来源:发表于2019-12-29 22:21 被阅读0次

题目来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/hamming-distance

两个整数之间的汉明距离指的是这两个数字对应二进制位不同的位置的数目。

给出两个整数 x 和 y,计算它们之间的汉明距离。

注意:
0 ≤ x, y < 231.

示例:

输入: x = 1, y = 4

输出: 2

解释:
1   (0 0 0 1)
4   (0 1 0 0)
       ↑   ↑

上面的箭头指出了对应二进制位不同的位置。

思路:用异或操作后两个数二进制位不同的数都等于1了,再用逐步右移并&1操作获取1的个数
代码:

class Solution {
    public int hammingDistance(int x, int y) {
        int tmp = x^y;
        //计算1的个数
        int ans = 0;
        while(tmp > 0){
            if((tmp&1) == 1){
                ans++;
            }
            tmp = tmp >> 1;
        }
        return ans;
    }
}

相关文章

  • 汉明距离、超立方体、异或的一些知识

    汉明距离和汉明重量 汉明距离是以理查德·卫斯里·汉明的名字命名的。在信息论中,两个等长字符串之间的汉明距离是两个字...

  • LeetCode 461.汉明距离

    ?博客原文 :《LeetCode 461.汉明距离 - JavaScript》 汉明距离定义:两个整数之间的汉明距...

  • 汉明距离

  • 汉明距离

    两个整数之间的汉明距离指的是这两个数字对应二进制位不同的位置的数目。 给出两个整数 x 和 y,计算它们之间的汉明...

  • 汉明距离

    指的是两个(相同长度)字符串,你变成我,我变成你,需要换掉多少个字符的总和,即Max(Sum1,Sum2),比如...

  • 汉明距离

    题目来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/hamm...

  • 汉明距离

    https://zhuanlan.zhihu.com/p/94081111pHash简单来说,是通过感知哈希算法对...

  • 汉明距离

    题目: 题目的理解: 将整数转化为二进制,然后再转化为字符串,进行字符串比较,得到不同的位数。 python实现 ...

  • 汉明距离

    两个整数之间的汉明距离指的是这两个数字对应二进制位不同的位置的数目。 给出两个整数 x 和 y,计算它们之间的汉明...

  • 汉明距离

    汉明距离是求等长的字段串之间的距离,换句话说,就是通过异或求出1的数量. 举例说明 复习一下异或的求解方式,异或是...

网友评论

      本文标题:汉明距离

      本文链接:https://www.haomeiwen.com/subject/wxmuoctx.html