공부가 싫은 개발자
[JAVA] Queue 본문
✅ 기본 개념
- 선입선출 (FIFO) 구조
- BFS, 시뮬레이션, 순서 처리에 자주 사용
- 대표 구현체: LinkedList, ArrayDeque
1. 선언과 초기화
Queue<Integer> queue = new LinkedList<>();
2. 요소 추가
queue.offer(10); // 추가 (null 반환 가능)
queue.add(20); // 추가 (예외 발생 가능)
3. 요소 제거
queue.poll(); // 제거 + 반환 (비어있으면 null)
queue.remove(); // 제거 + 반환 (비어있으면 예외)
4. 요소 조회
queue.peek(); // 맨 앞 요소 확인 (제거 X)
5. 전체 순회
for (int num : queue) {
System.out.println(num);
}
6. 크기 확인
queue.size();
7. 코딩테스트에서 자주 쓰이는 상황
| 상황 | 활용 예시 |
| BFS 탐색 | queue.offer(node) |
| 시뮬레이션 | poll()로 순서대로 처리 |
| 거리 계산 | queue로 레벨별 탐색 |
'코딩테스트' 카테고리의 다른 글
| [JAVA] PriorityQueue (0) | 2025.10.17 |
|---|---|
| [JAVA] Stack (0) | 2025.10.17 |
| [JAVA] Set (0) | 2025.10.17 |
| [JAVA] Map (0) | 2025.10.17 |
| [JAVA] Collections (0) | 2025.10.17 |