136. Single Number (Easy)

Description:

Given a non-empty array of integers, every element appears twice except for one. Find that single one.

Note:

Your algorithm should have a linear runtime complexity. Could you implement it without using extra memory?

Example 1:

Input: [2,2,1]
Output: 1

Example 2:

Input: [4,1,2,1,2]
Output: 4


Solution:

class Solution:
    def singleNumber(self, nums: List[int]) -> int:
        dic = set()
        for n in nums:
            if n not in dic:
                dic.add(n)
            else:
                dic.remove(n)
        return list(dic)[0]

Runtime: 92 ms, faster than 95.13% of Python3 online submissions for Single Number.
Memory Usage: 16.2 MB, less than 5.09% of Python3 online submissions for Single Number.

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容