PriorityQueue 내림차순 정렬로 풀 경우
368
작성한 질문수 1
안녕하세요 !
PrioryQueue 오름차순 정렬 하셔서 풀이 하셨는데,
오름차순이 아닌 내림차순으로 해서 PQ에 넣는 방법에 대해서는 어떻게 생각하시나요?
public int solve(int[] nums , int k) {
int answer = 0;
// priority queue 내림차순 정렬
PriorityQueue<Integer> pq = new PriorityQueue(Collections.reverseOrder());
// Priority Queue에 배열 원소들을 모두 넣는다.
for (int i = 0; i < nums.length; ++i) {
pq.offer(nums[i]);
}
// k개 꺼내서, 마지막으로 꺼낸 원소를 반환한다
while(k > 0) {
answer = pq.poll();
--k;
}
return answer;
}
답변 1
2
네 안녕하세요~~
좋은 아이디어입니다~~
PriorityQueue는 숫자는 디폴트가 오름차순이죠.(minHeap 꼭대기에 제일 작은값)
반대로 내림차순으로 maxHeap을 만드시고, 그걸 빼내고 k번째인거 체크하는 순으로 하셨네요~ 굿입니다.
PriorityQueue 비교하는 문제는 은근히 나오고, Comparator를 이용하여 객체 비교하는거 자주나오죠
자유자재로 다루셔야 시험볼때 시간 안빼기겠죠~~~
즐코딩하시고~ 화이팅~~^^;
강의자료에 나오는 m과 n의 범위가 코딩하고 다른거 같습니다
0
252
0
나선형매트릭스 깃허브에 코드가 없는것같아요
0
208
0
로그 파일의 데이터 재정렬 코드가 깃허브에 없어요!
0
223
0
새로 생긴 기초강의 질문드려요
1
373
1
질문드립니다
1
218
1
Unique Paths Integer 질문입니다
0
219
1
subString 방법으로 문제 풀이 영상은 짤린건가요?
1
251
1
DFS 방식으로 푼 것이 맞나요?
0
307
2
질문드립니다~
0
195
1
left if문에 대해서
1
255
1
오타 인가요?
1
236
1
안녕하세요 강사님
1
187
1
질문 드립니다
0
172
2
Queue&Stack 문제해설집 문의
0
183
1
문제분석 로직 질문
1
228
1
시간 복잡도 문의드립니다.
1
230
1
시간복잡도 질문드립니다.
1
200
1
for-each 문 질문있습니다!
0
292
1
강의영상에서 사용된 로그 메소드가 궁금합니다.
2
279
2
강의자료 + 문제 이해 관련 질문입니다
1
277
3
강사님 오류맞나요?
1
206
1
강사님 시간 복잡도에 대해서 질문드립니다.
1
172
1
질문입니다.
1
200
1
문제에 대한 이해
1
312
1





