【题目】
【代码】
【Python】

class Solution:
def singleNumber(self, nums: List[int]) -> int:
for i in range(1,len(nums)):
nums[0]^=nums[i]
return nums[0]
【排序+计数】

class Solution:
def singleNumber(self, nums: List[int]) -> int:
nums.sort()
flag=0
for i in range(1,len(nums)):
if nums[i]==nums[i-1]:
flag+=1
else:
flag-=1
if flag<0:
return nums[i-1]
return nums[-1]
【一行代码:reduce+位运算】

class Solution:
def singleNumber(self, nums: List[int]) -> int:
return reduce(lambda x, y: x ^ y, nums)
本文介绍三种高效的方法来找出数组中只出现一次的元素:使用Python类实现的位运算、排序加计数策略及利用reduce结合位运算的一行代码解决方案。
2038

被折叠的 条评论
为什么被折叠?



