347 - Top K Frequent Elements
Written on December 19, 2019
Tweet
Given a non-empty array of integers, return the k most frequent elements.
from typing import List
from collections import Counter
class Solution:
def topKFrequent(self, nums: List[int], k: int) -> List[int]:
if not nums or not k:
return []
buckets = [[] for _ in range(len(nums))]
for num, count in Counter(nums).items():
buckets[len(nums) - count].append(num)
return sum(buckets, [])[:k]