老卫带你学---剑指offer刷题系列(40.数组中只出现一次的数字)

40.数组中只出现一次的数字

问题:

一个整型数组里除了两个数字之外,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字。

解决:

思想:

这道题依旧是计数问题,果断采用字典策略。

python代码:

# -*- coding:utf-8 -*-
class Solution:
    # 返回[a,b] 其中ab是出现一次的两个数字
    def FindNumsAppearOnce(self, array):
        # write code here
        if not array:
            return 0
        dic={}
        for x in array:
            if(dic.get(x)==None):
                dic[x]=1
            else:
                dic[x]+=1
            
        result=[]
        for i in dic:
            if(dic[i]==1):
                result.append(i)
                
        return result[0],result[1]
                
发布了160 篇原创文章 · 获赞 30 · 访问量 7万+

猜你喜欢

转载自blog.csdn.net/yixieling4397/article/details/105041300
今日推荐