Cho mảng A, mọi số xuất hiện 2 lần trừ một số. Tìm số đó. Ví dụ: [1,1,5,3,2,5,2] → 3.
Giải pháp
Sử dụng XOR: a^a=0, 0^b=b. XOR tất cả phần tử → kết quả là số đơn lẻ.
Ví dụ
Triển khai Python:
class Solution(object):
def singleNumber(self, nums):
ans = nums[0]
for i in range(1,len(nums)):
ans ^=nums[i]
return ans
ob1 = Solution()
print(ob1.singleNumber([1,1,5,3,2,5,2])) Đầu vào
nums = [1,1,5,3,2,5,2]
Đầu ra
3