Skip to main content

Single Number II

Problem Statement​

Given an integer array nums where every element appears three times except for one, which appears exactly once. Find the single element and return it.

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

Leetcode Link

Example 1:​

Input: nums = [2,2,3,2]
Output: 3

Example 2:​

Input: nums = [0,1,0,1,0,1,99]
Output: 99

Constraints:​

  • 1 <= nums.length <= 3 * 104
  • -231 <= nums[i] <= 231 -1
  • Each element in nums appears exactly three times except for one element which appears once.

Code​

Python
class Solution:
def singleNumber(self, nums: List[int]) -> int:
di={}
for i in nums:
if i in di:
di[i]+=1
else:
di[i]=1
for i,j in enumerate(di):
if di[j]==1:
return j