【LeetCode】461. 漢明距離

LeetCode算法題目

題目

兩個整數(shù)之間的漢明距離指的是這兩個數(shù)字對應(yīng)二進(jìn)制位不同的位置的數(shù)目。

給出兩個整數(shù) xy,計算它們之間的漢明距離。

注意:
0 ≤ x, y < 2^{31}.
示例 :

輸入: x = 1, y = 4

輸出: 2

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

上面的箭頭指出了對應(yīng)二進(jìn)制位不同的位置。

解答

Python3

方法一:

class Solution:
    def hammingDistance(self, x, y):
        """
        :type x: int
        :type y: int
        :rtype: int
        """
        #自定義十進(jìn)制轉(zhuǎn)二進(jìn)制函數(shù)
        def dec2bin(num):
            num_bin = []
            while num!= 0:
                num_bin.append(num%2)
                num = num // 2
            return num_bin[::-1]
        x_bin = dec2bin(x)
        y_bin = dec2bin(y)
        while len(x_bin) != len(y_bin):
            if len(x_bin) < len(y_bin):
                x_bin.insert(0,0)
            else:
                y_bin.insert(0,0)
        num = 0
        for i in range(len(x_bin)): 
            if x_bin[i] != y_bin[i]:
                num += 1
        return num

方法二:

class Solution:
    def judgeCircle(self, moves):
        """
        :type moves: str
        :rtype: bool
        """
        return list(bin(x^y)).count('1')
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 題目: 漢明距離 兩個整數(shù)之間的漢明距離指的是這兩個數(shù)字對應(yīng)二進(jìn)制位不同的位置的數(shù)目。 給出兩個整數(shù) x 和 y...
    韋弦Zhy閱讀 539評論 0 1
  • LeetCode 刷題隨手記 - 第一部分 前 256 題(非會員),僅算法題,的吐槽 https://leetc...
    蕾娜漢默閱讀 18,388評論 2 36
  • 數(shù)組 記錄《劍指offer》中所有關(guān)于數(shù)組的題目,以及LeetCode中的相似題目 相關(guān)題目列表 說明 由于簡書...
    wenmingxing閱讀 1,597評論 1 12
  • 先來了解一下漢明距離 在信息論中,兩個等長字符串之間的漢明距離是兩個字符串對應(yīng)位置的不同字符的個數(shù)。換句話說,它就...
    sixkery閱讀 458評論 0 1
  • 原文首發(fā)于 baishusama.github.io,歡迎圍觀~肝不動業(yè)務(wù)代碼的時候,就時不時地做個題吧/w\ 題...
    白蜀黍閱讀 267評論 0 0

友情鏈接更多精彩內(nèi)容