概述
题目链接
题目描述:
给定一个整数数组 nums,其中恰好有两个元素只出现一次,其余所有元素均出现两次。 找出只出现一次的那两个元素。
示例 :
输入: [1,2,1,3,2,5]
输出: [3,5]
注意:
结果输出的顺序并不重要,对于上面的例子, [5, 3] 也是正确答案。
你的算法应该具有线性时间复杂度。你能否仅使用常数空间复杂度来实现?
解题思路:
用字典存放每个数字出现的次数,然后返回出现次数为1的数字
class Solution:
def singleNumber(self, nums: List[int]) -> List[int]:
dic={}
for i in nums:
dic[i]=dic.get(i,0)+1
res=[]
for key,value in dic.items():
if value==1:
res.append(key)
return res
解法二:
将原数组用set去重,然后set中的元素,依次移除原数组的元素,最后剩下的为仅出现一次的元素
解法三:
位运算
最后
以上就是昏睡太阳为你收集整理的LeetCode 260. 只出现一次的数字 III(python)(未完成)的全部内容,希望文章能够帮你解决LeetCode 260. 只出现一次的数字 III(python)(未完成)所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复