본문 바로가기
  • soobinhand의 기술 블로그
Computer Science/JAVA

[JAVA] Priority Queue

by soobinhand 2021. 10. 30.
728x90

Priority Queue

  • 우선순위 큐는 먼저 들어온 순서대로 데이터가 나가는 것이 아닌 우선순위를 먼저 결정하고 우선순위가 높은 원소가 먼저 나가는 자료구조입니다.
  • 보통 힙을 이용하여 구현하는 것이 일반적입니다.

 

PriorityQueue<Integer> pq = new PriorityQueue<>();
PriorityQueue<Integer> pq = new PriorityQueue<>(Collections.reverseOrder());

 

첫 줄은 낮은 숫자 순, 두번째 줄은 높은 숫자순 우선순위 큐입니다.

 

메소드 종류

  • add(), offer()
    • 우선순위 큐에 요소를 삽입합니다. 
    • 넣어지면서 동시에 정렬도 알아서 합니다.
  • clear()
    • 우선순위 큐의 모든 요소를 삭제합니다.
  • contains(값)
    • 해당 큐에 값이 있다면 true를 반환합니다.
  • peek()
    • 해당 큐의 맨 첫 번째 요소를 검색합니다.
    • 하지만 제거하지는 않습니다.
    • 만약 큐가 비어있다면 null 반환.
  • poll()
    • 해당 큐의 맨 첫 번째 요소를 가져옴과 동시에 삭제합니다.
    • 만약 큐가 비어있다면 null 반환.
  • remove(값)
    • 해당 큐에서 값을 삭제합니다.
728x90

'Computer Science > JAVA' 카테고리의 다른 글

[JAVA] 추상클래스와 인터페이스의 차이  (0) 2022.01.26
[JAVA] StringTokenizer  (0) 2021.11.14
[JAVA] JDBC  (0) 2021.10.29
[JAVA] format 함수  (0) 2021.10.24
[JAVA] toBinaryString 함수  (0) 2021.10.24

댓글