LeetCode 461. 汉明距离(位运算)

LeetCode 461. 汉明距离

原题

LeetCode 461. 汉明距离

思路

  • 汉明距离就是两个数异或后的二进制中1的数目

代码

class Solution {
public:
    int hammingDistance(int x, int y) {
        int z = x ^ y;
        int ans = 0;
        while (z) {
            ans += (z & 1);
            z >>= 1;
        }
        return ans;
    }
};

运行截图

在这里插入图片描述

收获

  • 统计二进制数中的1的数目可以用内置函数__builtin_popcount()来执行
  • 位运算很奇妙哈不得不说! & >>

版权声明:本文为virtual_YL原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。