victory的博客

长安一片月,万户捣衣声

0%

leetcode | 461.汉明距离

461.汉明距离

题目描述

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

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

题目链接

思路

我的题解

代码

class Solution(object):
    def hammingDistance(self, x, y):
        """
        :type x: int
        :type y: int
        :rtype: int
        """
        return bin(x ^ y).count('1')


if __name__ == "__main__":
    # # 十进制转二进制:bin(10)
    # print(bin(10))
    # # 十进制转八进制:oct(10)
    # print(oct(10))
    # # 十进制转十六进制:hex(10)
    # print(hex(10))
    #
    # # 二进制转十进制:int("1010",2)
    # print(int("1010", 2))
    # # 八进制转十进制:int("0o12",8)
    # print(int("0o12", 8))
    # # 十六进制转十进制:int("0xa",16)
    # print(int("0xa", 16))
    
    # print(str(bin(1 ^ 4)).count('1'))
    # print(str(bin(3 ^ 1)).count('1'))
    
    slt = Solution()
    result = slt.hammingDistance(1, 4)
    print(result)