461. Hamming Distance

Easy (Dễ) Python 🔗 Xem trên LeetCode

📋 Đề Bài

The Hamming distance between two integers is the number of positions at which the corresponding bits are different.

Given two integers x and y, return the Hamming distance between them.

 

Example 1:

Input: x = 1, y = 4
Output: 2
Explanation:
1   (0 0 0 1)
4   (0 1 0 0)
       ↑   ↑
The above arrows point to positions where the corresponding bits are different.

Example 2:

Input: x = 3, y = 1
Output: 1

 

Constraints:

  • 0 <= x, y <= 231 - 1

🧠 Thuật Toán & Kỹ Thuật

Bit Manipulation (Thao tác bit)
⏱️ Thời gian O(n)
💾 Không gian O(1)

💻 Lời Giải

Python 0461-hamming-distance.py
class Solution:
    def hammingDistance(self, x: int, y: int) -> int:
        ans = 0
        
        while x or y:
            ans += x & 1 != y & 1
            x >>= 1
            y >>= 1
            
        return ans