LeetCode-461. 汉明距离(python3)
生活随笔
收集整理的這篇文章主要介紹了
LeetCode-461. 汉明距离(python3)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
題目鏈接:
?漢明距離
兩個整數之間的漢明距離指的是這兩個數字對應二進制位不同的位置的數目。
給出兩個整數?x?和?y,計算它們之間的漢明距離。
注意:
0 ≤?x,?y?< 231.
示例:
輸入: x = 1, y = 4輸出: 2解釋: 1 (0 0 0 1) 4 (0 1 0 0)↑ ↑上面的箭頭指出了對應二進制位不同的位置。解題思路:
第一步,將兩個數轉換成2進制
第二步,由于轉換成2進制后,兩個數的位數長度可能會不一樣,這就要讓位數少的來補齊。
第三步,設置計數變量,比較不同
解題代碼
class Solution:def hammingDistance(self, x, y):""":type x: int:type y: int:rtype: int"""count = 0a = bin(x)[2:]b = bin(y)[2:]# 少的位數補齊if len(a) > len(b):b = "0" * (len(a)-len(b)) + belse:a = "0" * (len(b)-len(a)) + a# 比較for i in range(len(a)):if a[i] != b[i]:count += 1print(count)return count結果:通過
總結
以上是生活随笔為你收集整理的LeetCode-461. 汉明距离(python3)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Leetcode-184. 部门工资最高
- 下一篇: leetCode-88. 合并两个有序数