Faaez Razeen

Top K Frequent Elements

  • 1 min read
  • Array
  • LC-Medium

3 years ago

Solution

TimeSpaceExplanation
O(n)O(1)
def topKFrequent(self, nums: List[int], k: int) -> List[int]: counts = Counter(nums) buckets = [[] for i in range(len(nums))] for num, count in counts.items(): buckets[count - 1].append(num) ans = [] for i in range(len(buckets) - 1, -1, -1): for num in buckets[i]: ans.append(num) k -= 1 if k == 0: return ans