티스토리 뷰
자바의 **우선순위 큐 (Priority Queue)**는 큐와 비슷하게 요소들을 저장하고 꺼낼 수 있는 자료 구조입니다. 하지만 일반 큐와 달리, 요소들이 우선순위에 따라 정렬됩니다. 즉, 요소를 꺼낼 때는 큐에서 가장 높은 우선순위를 가진 요소가 먼저 나옵니다. 자바에서는 PriorityQueue 클래스가 이 기능을 제공합니다. 기본적으로 자연 순서에 따라 정렬되며, 사용자 정의 비교자를 사용하여 커스텀 우선순위를 지정할 수도 있습니다. 우선순위큐의 간단한 사용방법에 대해 알아보겠습니다.
1. 선언
PriorityQueue<Integer> pq =
new PriorityQueue<>(); // 정순
PriorityQueue<Integer> pq =
new PriorityQueue<>(Collections.reverseOrder()); // 역순
PriorityQueue<Task> pq =
new PriorityQueue<>(Comparator.comparingInt(Task::getProcess)); // 객체이용
2. 입력
// 숫자 입력
pq.add(10);
// 객체 입력
pq.add(new Task(10, 20));
3. 출력
pq.peek(); // 현재값 출력
4. 삭제
pq.poll(); // 현재값 출력 후 제거
pq.remove(10); // 인자값 제거
감사합니다.
'프로그래밍 언어 > Java' 카테고리의 다른 글
[Java] 자바 제네릭과 오버로딩 (2) | 2024.10.24 |
---|---|
[Java] 소수 판별하기 (1) | 2024.08.21 |
[Java] The type com.fasterxml.jackson.core.JsonProcessingException cannot be resolved. It is indirectly referenced from required .class files (0) | 2024.07.02 |
[Java] JSch 로 SFTP 파일 전송하기 (0) | 2024.06.07 |
[Java] Zip 파일 내부 정보 가져오기 (0) | 2024.05.24 |
최근에 올라온 글
- Total
- Today
- Yesterday