[자료구조]-큐(Queue)

큐(Queue) 정리

개념

  1. 처음 자료가 처음 나오는 구조(FIFO, First-In-First-Out)구조이다.
  2. 앞쪽 끝에서만 자료를 빼고, 뒤쪽 끝에서만 자료를 넣을 수 있다.

PriorityQueue

  • 우선순위 큐는 값을 저장한 순서에 상관없이 우선순위가 높은 값부터 꺼낸다.

Queue API

import java.util.LinkedList; //import
import java.util.Queue; //import
import java.util.Collections;

Queue<T> queue = new LinkedList<T>(); //객체 선언
PriorityQueue<T> queue = new PriorityQueue<T>();//작은 원소 우선순위
PriorityQueue<T> queue = new PriorityQueue<T>(Collections.reverseOrder());//큰 원소 우선순위

queue.offer(E element); // 큐에 원소 추가
queue.remove(); // 큐의 처음 원소 제거
queue.poll(); // 큐의 처음 원소 반환, 제거
// poll()함수는 큐가 비어있으면 null반환
queue.peek(); // 큐의 처음 원소 반환
queue.clear(); // 큐 초기화

요약

  • 이번에는 없다.
  • 다음에는 힙에 대해 설명하겠다.