Faaez Razeen

First Unique Number

  • 1 min read
  • Array
  • LC-Medium

3 years ago

Solution

TimeSpaceExplanation
O()O()
class FirstUnique: def __init__(self, nums: List[int]): self.counts = defaultdict(int) self.queue = deque() for num in nums: self.add(num) def showFirstUnique(self) -> int: while self.queue and self.counts[self.queue[0]] > 1: self.queue.popleft() if self.queue: return self.queue[0] return -1 def add(self, value: int) -> None: self.queue.append(value) self.counts[value] += 1