Bit Manipulation
一個非零數字 XOR 另外一個數字兩字,會變回自己
a ⊕ b ⊕ b = a
因為一個數字 XOR 兩次,會變 0,且任何數 XOR 0 會等於自己
class Solution: def singleNumber(self, nums: List[int]) -> int: res = 0 for n in nums: res ^= n return res
Time O(N)
Space O(1)