美文网首页
461.汉明距离

461.汉明距离

作者: su945 | 来源:发表于2020-08-26 23:09 被阅读0次

题目描述

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

给出两个整数 xy,计算它们之间的汉明距离。
输入: x = 1, y = 4

输出: 2

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

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

问题分析

解题思路1

class Solution {
public:
    int hammingDistance(int x, int y) {
        //计算异或的值
        int n = x ^ y;

        //计算
        int counter = 0;

        //将每一个元素左移然后进行计算
        while (n > 0)
        {
            counter += n & 1;
            n >>= 1;
        }

        return counter;
    }
};

解题思路2

class Solution {
public:
    int hammingDistance(int x, int y) {
        return bitset<32>(x^y).count();
    }
};

相关文章

  • LeetCode 461.汉明距离

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

  • TOP 91 - 95

    461. 汉明距离[https://leetcode-cn.com/problems/hamming-distan...

  • 力扣每日一题:461.汉明距离 细说异或与二进制 双解!

    461.汉明距离[https://leetcode-cn.com/problems/hamming-distanc...

  • 461. 汉明距离

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

  • 461. 汉明距离

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

  • 461. 汉明距离

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

  • 461.汉明距离

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

  • 461. 汉明距离

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

  • 461. 汉明距离

    解法 异或运算,计算完以后再算计算结果中有几个1,就是不同的二进制数。 更快的算1的方法

  • 461. 汉明距离

    一 题目: 二 思路: 位运算,详细直接看代码吧 三 代码:

网友评论

      本文标题:461.汉明距离

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