heapq

wonderful world·2022년 6월 24일
0

06/25 heapq 문제

https://leetcode.com/problems/kth-largest-element-in-an-array/description/

priority queue 자료구조를 heapq모듈로 기본제공.
heappop()은 최소 값을 log n 복잡도로 반환. max 값이 반환되게 하려면 약간의 트릭을 써서 가능. 기존값에 마이너스 1을 곱해 음수로 치환하고 최종 값으로 반환할땐 다시 마이너스를 제거.

class Solution:
    def findKthLargest(self, nums: List[int], k: int) -> int:
        nums=[-n for n in nums]
        heapq.heapify(nums)
        for i in range(k):
            ans=heapq.heappop(nums)
        return -ans
profile
hello wirld

0개의 댓글