題目連結 | 136. 只出現一次的數字 |
---|---|
思路 | 位運算-異或的性質 |
題解連結 | O(n) 一次遍歷,附題單!(Python/Java/C++/Go/JS/Rust) |
關鍵點 | \(a \oplus a = 0\) |
時間複雜度 | \(O(n)\) |
空間複雜度 | \(O(1)\) |
程式碼實現:
class Solution:
def singleNumber(self, nums: List[int]) -> int:
answer = 0
for num in nums:
answer ^= num
return answer
程式碼實現(標準庫):
class Solution:
def singleNumber(self, nums: List[int]) -> int:
return reduce(xor, nums)