- 문제 링크: https://leetcode.com/problems/top-k-frequent-elements/
- 난이도: Medium
주어진 숫자 배열에서, 가장 많이 나오는 top K개 요소들을 반환하는 문제다
{숫자: 나온 횟수} 식으로 dict 구성하고, value 기준으로 정렬하면 된다. (O(n logn))
class Solution:
def topKFrequent(self, nums: List[int], k: int) -> List[int]:
hist = defaultdict(int)
for x in nums:
hist[x] += 1
hist = sorted(hist.items(), key=lambda x: x[1])
return [x[0] for x in hist[-k:]]
반응형
'Online Judge > LeetCode' 카테고리의 다른 글
[LeetCode][Python] 36. Valid Sudoku (0) | 2024.09.08 |
---|---|
[LeetCode][Python] 238. Product of Array Except Self (0) | 2024.09.07 |
[LeetCode][Python] 49. Group Anagrams (0) | 2024.09.07 |
[LeetCode][Python] 1. Two Sums (0) | 2024.09.07 |
[LeetCode][Python] 242. Valid Anagram (0) | 2024.09.07 |