2024년 2월 18일 일요일

215. Kth Largest Element in an Array

문제 링크: https://leetcode.com/problems/kth-largest-element-in-an-array/description/

파이썬 소스: https://bit.ly/3w4bI5j

 계속 heapq를 사용해서 풀 수 있는 문제가 나오네요.

k개수 만큼 큰 수를 heap에 저장하구요, heappush() heappushpop()에서 작은 숫자는 heap에서

빠지게 됩니다. heapq를 사용하면 쉽게 풀 수 있는 문제입니다.


from typing import List
import heapq

class Solution:
    def findKthLargest(self, nums: List[int], k: int) -> int:
        heap = []

        for num in nums:
            if len(heap) == k:
                heapq.heappushpop(heap, num)
            else:
                heapq.heappush(heap, num)

        return heap[0]


댓글 없음:

댓글 쓰기