class Solution:
def singleNonDuplicate(self, nums: List[int]) -> int:
res = 0
for i in range(len(nums)):
res = res + nums[i] if i%2 == 0 else res - nums[i]
return res
解法二:异或
同136. 找数组只出现一次的数字,适用于有序和无序数组。
class Solution:
def singleNonDuplicate(self, nums: List[int]) -> int:
for num in nums[1:]:
nums[0] ^= num #取0号元素记录结果,节省空间
return nums[0]