您的位置:首页 > 其它

leetcode刷题15:single number

2014-05-07 23:22 316 查看
题目很简单,就是数字数组中除了一个数字,其他都是出现两次的,问怎么找到这个只出现一次的。

思路是使用一个集合,遍历给定数组,

如果当前数字不在集合中,就把它加入集合,这意味着第一次遇到该数字。

如果当前数字在集合中,就把他从集合中删除,这意味着第二次遇到该数字,因为只有一个出现一次的数组,所以遍历结束集合中还剩一个数字,即为所求。

代码:

class Solution:

    def singleNumber(self,A):

        ss=set()

        for int_ in A:

            if int_ in ss:

                ss.discard(int_)

            else:

                ss.add(int_)

        return ss.pop()
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: