[260][中等] 只出现一次的数字 III
题目描述
输入: [1,2,1,3,2,5]
输出: [3,5]解题思路
class Solution:
def singleNumber(self, nums: List[int]) -> List[int]:
res1 = 0
for num in nums:
res1 ^= num
loc = 1
for i in range(32):
if (res1 >> i) & 1 == 1:
break
loc <<= 1
res_0, res_1 = 0, 0
for num in nums:
if num & loc == 0:
res_0 ^= num
else:
res_1 ^= num
return [res_0, res_1]最后更新于