美文网首页
2020-04-14

2020-04-14

作者: 木马音响积木 | 来源:发表于2020-04-14 08:10 被阅读0次

    针对461 汉明距离,一看到,就应该想到位运算,而它的基础是二进制,以及反码,补码,及其运算

    对于python

    class Solution:
        def hammingDistance(self, x: int, y: int) -> int:
            return bin(x ^ y).count('1')
    

    注意,count,参数是字符串。

    class Solution:
        def hammingDistance(self, x: int, y: int) -> int:
            k = x ^ y
            a = 0
            while k:
                a += 1
                k = k & (k - 1)
            return a
    

    k = k & (k - 1) 布赖恩·克尼根算法.

    最重要的理解,查表法,哈希字典。
    以及沈剑大神,提到的,两次查表法。减少内存占用。

    相关文章

      网友评论

          本文标题:2020-04-14

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