数组中只出现一次的数字
Posted yqpy
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数组中只出现一次的数字相关的知识,希望对你有一定的参考价值。
题目描述
一个整型数组里除了两个数字之外,其他的数字都出现了偶数次。请写程序找出这两个只出现一次的数字。
思路
和那道字符串里面第一次出现唯一字符的题目类似,使用count计数方法;另外百度了一下发现还可以用collections模块的Counter方法,把列表值和对应的个数组成一个字典
方法一:
class Solution: # 返回[a,b] 其中ab是出现一次的两个数字 def FindNumsAppearOnce(self, array): # write code here targets = [] for num in array: if array.count(num)==1 and num not in targets: targets.append(num) return targets
方法二:
import collections class Solution: # 返回[a,b] 其中ab是出现一次的两个数字 def FindNumsAppearOnce(self, array): # write code here targets = [] dic = collections.Counter(array) for key,value in dic.items(): if value < 2: targets.append(key) return targets
以上是关于数组中只出现一次的数字的主要内容,如果未能解决你的问题,请参考以下文章