您当前的位置: 首页 >  Python

Better Bench

暂无认证

  • 2浏览

    0关注

    695博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

【Leetcode刷题Python】461. 汉明距离

Better Bench 发布时间:2022-07-30 23:42:49 ,浏览量:2

1 题目

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

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

示例 1:

输入:x = 1, y = 4 输出:2 解释: 1 (0 0 0 1) 4 (0 1 0 0) ↑ ↑ 上面的箭头指出了对应二进制位不同的位置。

示例 2:

输入:x = 3, y = 1 输出:1

2 解析

汉明距离:是对应位置上数字不同的位数。 计算 xx 和 yy 之间的汉明距离,可以先计算 x⊕y,即x异或y,然后统计结果中等于 1 的位数。

现在,原始问题转换为比特计数问题。 在这里插入图片描述

3 Python
class Solution:
    def hammingDistance(self, x: int, y: int) -> int:
        n = x ^ y
        res = 0
        while n:
            res+=1
            n &=n-1
        return res
关注
打赏
1665674626
查看更多评论
立即登录/注册

微信扫码登录

0.0392s