# 136 Single Number

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

You must implement a solution with a linear runtime complexity and use only constant extra space.

Example 1:

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

Example 2:

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

Example 3:

``````Input: nums = [1]
Output: 1
``````

Constraints:

• `1 <= nums.length <= 3 * 104`
• `-3 * 104 <= nums[i] <= 3 * 104`
• Each element in the array appears twice except for one element which appears only once.
 `````` 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 `````` ``````class Solution: def singleNumber(self, nums: List[int]) -> int: s = set() for num in nums: if num in s: s.remove(num) else: s.add(num) return list(s)[0] """ Math """ class Solution: def singleNumber(self, nums: List[int]) -> int: return 2 * sum(set(nums)) - sum(nums)``````
 `````` 1 2 3 4 5 6 7 8 9 10 11 12 13 14 `````` ``````func singleNumber(nums []int) int { set := make(map[int]bool) for _, num := range nums { if _, ok := set[num]; ok { delete(set, num) } else { set[num] = true } } for num, _ := range set { return num } return -1 }``````