1. 묻다
- 선입 선출 데이터 구조
선입 선출 데이터 구조 - 입력 주문에 데이터 처리가 필요한 경우 사용
전임자.인쇄물, 대기열, BFS 등
2. 기본 구조
- 선입 선출에는 기본적으로 데이터 추가, 데이터 가져오기 및 대기열 공간 확인이 포함됩니다.
- Enqueue: 대기열에서 데이터 추가
- Dequeue : 큐에서 데이터를 가져옵니다.
3. 기본 코드
public static void main(String() args) {
Queue queue = new LinkedList(); // stack 과 다르게 new Queue가 인터페이스로 구현되어 있어서 바로 객체를 생성할 수가 없으며 메소드를 다 오버라이딩 해야함
//LinkedList에서 queue가 필요한 메소드가 다 포함되어 있다.
queue.add(1);
queue.add(2);
queue.add(3);
queue.add(4);
queue.add(5);
System.out.println(queue);
System.out.println(queue.poll()); // 들어있는 데이터를 빼낼때 poll
System.out.println(queue); // 2, 3, 4, 5
System.out.println(queue.poll()); // 2
System.out.println(queue); // 3, 4, 5
System.out.println(queue.peek()); //3
System.out.println(queue); // 3, 4, 5
System.out.println(queue.contains(3)); //true
System.out.println(queue.size()); // 3
System.out.println(queue.isEmpty());
queue.clear();
System.out.println(queue);
System.out.println(queue.poll()); // null
}
- stack과 달리 new Queue는 인터페이스로 구현되기 때문에 즉시 객체를 생성할 수 없고 모든 메서드를 다시 작성해야 합니다 LinkedList에는 Queue에 필요한 모든 메서드가 포함되어 있습니다.