본문 바로가기
코딩 테스트/leetcode

Top K Frequent Elements

by ornni 2024. 7. 19.
728x90
반응형

첫번째 코드

 

먼저 문제를 보고 든 생각은 딕셔너리를 이용해야겠다! 라는 생각이었다.

하지만 딕셔너리를 많이 사용해보지 않아서 GPT의 도움을 살짝 받았다!!

 

그리고 value의 수가 가장 큰 k개를 뽑으려고 했는데, 이때 heapq를 이용하는 것이 좋다는 GPT의 추천이 있어

이를 적용해보았다.

 

import heapq

class Solution:
    def topKFrequent(self, nums: List[int], k: int) -> List[int]:
        count_dict = {}
        for i in nums:
            if i not in count_dict.keys():
                count_dict[i] = 1
            else:
                count_dict[i] += 1

        largest_keys = heapq.nlargest(k, count_dict, key=count_dict.get)
        return largest_keys

 

통과!


링크

https://github.com/ornni/leetcode/tree/main/0347-top-k-frequent-elements

 

leetcode/0347-top-k-frequent-elements at main · ornni/leetcode

Collection of LeetCode questions to ace the coding interview! - Created using [LeetHub v3](https://github.com/raphaelheinz/LeetHub-3.0) - ornni/leetcode

github.com

 

반응형

'코딩 테스트 > leetcode' 카테고리의 다른 글

Deepest Leaves Sum  (0) 2024.08.02
Find Target Indices After Sorting Array  (0) 2024.07.29
Delete Greatest Value in Each Row  (0) 2024.07.15
Number of Good Pairs  (0) 2024.07.12
Count Pairs Whose Sum is Less than Target  (0) 2024.06.29