99클럽 코테 스터디 10일차 TIL + 오늘의 학습 키워드

ㅎㅇ·2024년 7월 31일
0

항해99 TIL

목록 보기
7/33

*제목
스트림에서 K번째로 큰 요소

*오늘의 문제

코드
import java.util.
;

class KthLargest {
private final PriorityQueue pq;
private final int k;

public KthLargest(int k, int[] nums) {
    this.k = k;
    pq = new PriorityQueue<>();
    
    for (int num : nums) {
        add(num);
    }
}

public int add(int val) {
    if (pq.size() < k) {
        pq.offer(val);
    } else if (val > pq.peek()) {
        pq.poll();
        pq.offer(val);
    }
    
    return pq.peek();
}

}

*설명
PriorityQueue를 사용하여 k개의 가장 큰 요소를 유지한다 생성자에서 초기 배열의 모든 요소에 add메서드를 호출

profile
안녕하세요

0개의 댓글