LeetCodeブラシの質問461.ハミング距離
どこに行くのかわかりませんが、もう途中です! |
---|
会ったことはありませんが、時間は急いでいますが、ユシに会いました。本当に素晴らしい運命です。ご来店ありがとうございました! |
- トピック:
2つの整数間のハミング距離は、2つの数値が異なる2進数に対応する位置の数を指します。
2つの整数を指定しx
、y
それらの間のハミング距離を計算します。 - 例:
输入: x = 1, y = 4
输出: 2
解释:
1 (0 0 0 1)
4 (0 1 0 0)
↑ ↑
上面的箭头指出了对应二进制位不同的位置。
- ヒント:
0 ≤ x, y < 231
。 - コード:
class Solution:
def hammingDistance(self, x: int, y: int) -> int:
a = bin(x ^ y)
return a.count('1')
# 执行用时:40 ms, 在所有 Python3 提交中击败了69.43%的用户
# 内存消耗:13.7 MB, 在所有 Python3 提交中击败了24.63%的用户
- アルゴリズムの説明:
ハミング距離が得られ、定義されるx
とy
、排他的OR、結果をバイナリに変換され、その後、統計の内部との間に1
数。