PriorityQueue(우선순위 큐)
일반 적인 큐의 구조와 동일하나 데이터가 들어온 순서대로 나가는 것이 오름차순으로 따라 데이터가 나가는 자료구조
시간 복잡도 : O(NlogN)
import java.util.PriorityQueue;
public class Main {
public static void main(String[] args) {
PriorityQueue<Integer> desc = new PriorityQueue<>();
desc.add(3);desc.add(5);desc.add(2);desc.add(1);desc.add(4);
while (desc.size() > 0){
System.out.print(desc.poll()); // 1 2 3 4 5 출력됨
}
}
}
Collections.reverseOrder() 를 사용하여 내림차순으로 도 사용가능
import java.util.Collections;
import java.util.PriorityQueue;
public class Main {
public static void main(String[] args) {
PriorityQueue<Integer> asc = new PriorityQueue<>(Collections.reverseOrder());
asc.add(3);asc.add(5);asc.add(2);asc.add(1);asc.add(4);
System.out.println(asc);
while (asc.size() > 0){
System.out.print(asc.poll()); //5 4 3 2 1 출력
}
}
}
'Java > Class & method' 카테고리의 다른 글
replace (0) | 2022.12.20 |
---|