Given an array of integers, every element appears twice except for one. Find that single one.
思路:1)可以使用python字典,遍历一遍数组,将出现次数设为value,将数值设为key。最后找出出现次数为1的键值。
2)由于所有的数只有一个出现一次可以使用set()选出所有不重复的数字乘二再减原数组集合结果即为单个的值。
python知识:1.dict(1)dict本身提供的一个 get 方法 dict.get(key, default=None),在Key不存在的时候,返回默认值None
可使用pop方法 dict.pop(key[,default]),通过key值删除dict内元素,并返回被删除key对应的value。 (3)for key, value in d.items()遍历dict
解决方式:
class Solution:
def singleNumber(self, nums):
return 2*sum((set(nums)))-sum(nums)
class Solution:
def singleNumber(self, nums):
dic = {}
for num in nums:
dic[num] = dic.get(num, 0)+1
for key, val in dic.items():
if val == 1:
return key