只出现一次的数字
给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。
说明
你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?
示例1
输入:[2,2,1]
输出: 1
示例2
输入:[4,1,2,1,2]
输出: 4
方法一:构建新列表
# 只出现一次的数字
# nums = [4,1,2,1,2]
nums = [2,2,1]
# 方法一:构建新列表方法
s = []
for i in nums:
if i not in s:
s.append(i)
elif i in s:
s.remove(i)
print(s[0])
方法二:count()
# 方法二:count
for i in nums:
if nums.count(i) == 1:
print (i)
方法三:异或
# 方法三:异或((0^a=a,a^a=0,a^b^a=b))
res = 0
for i in nums:
res^=i
print(res)
本文介绍了LeetCode的一个问题——找到数组中只出现一次的数字。提供了三种解决方案,包括构建新列表、使用count()函数以及利用异或操作。并给出了具体的示例输入和输出。
只出现一次的数字【Python】&spm=1001.2101.3001.5002&articleId=98979376&d=1&t=3&u=490c46ee27c94ea39c2064804edf89de)
437

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



