자료구조 시리즈 5편
2025. 4. 21. 10:32ㆍ개발이야기
728x90
반응형
큐(Queue) 완전 이해하기
이전 글에서는 스택(Stack)에 대해 알아봤습니다.
이번에는 선입선출(FIFO) 구조를 가지는 큐(Queue) 에 대해 자세히 정리해봅니다.
1. 큐란?
큐는 먼저 넣은 데이터가 먼저 나오는 자료구조입니다. (FIFO: First-In, First-Out)
- 가장 먼저 추가된 데이터가 가장 먼저 제거됨
- 주로 작업 대기열, 프린터 작업 처리 등에 사용
2. 큐의 특징
항목 설명
삽입(Enqueue) | 뒤쪽(Rear)으로 추가 |
삭제(Dequeue) | 앞쪽(Front)에서 제거 |
조회(Peek) | 가장 앞 요소만 확인 (제거는 안 함) |
크기 제한 | 있을 수도 있고 없을 수도 있음 |
3. 큐 사용 예시 (C# 기준)
Queue 선언과 초기화
using System.Collections.Generic;
// 빈 큐 생성
Queue<string> queue = new Queue<string>();
요소 추가 (Enqueue)
queue.Enqueue("첫 번째");
queue.Enqueue("두 번째");
queue.Enqueue("세 번째");
요소 제거 (Dequeue)
string first = queue.Dequeue();
Console.WriteLine(first); // "첫 번째" 출력
가장 앞 요소 확인 (Peek)
string currentFirst = queue.Peek();
Console.WriteLine(currentFirst); // "두 번째" 출력 (삭제되지 않음)
큐 순회
foreach (var item in queue)
{
Console.WriteLine(item);
}
4. 실생활 예시로 이해하기
- 큐 = 은행 대기 줄
- 먼저 온 고객부터 차례로 서비스 받음
- 큐 = 프린터 출력 대기열
- 먼저 제출한 문서부터 순서대로 출력
5. 큐의 활용 사례
사용 예시 설명
작업 대기열 | 여러 작업을 순서대로 처리 |
너비 우선 탐색(BFS) | 그래프 탐색 시 사용 |
CPU 작업 스케줄링 | 프로세스를 공평하게 처리 |
이번 글에서는 큐(Queue) 의 개념, 특징, C# 코드 사용법을 정리했습니다.
- 먼저 넣은 데이터가 먼저 나오는 구조 (FIFO)
- 대기열 관리, 순서 처리에 매우 많이 사용
728x90
반응형
'개발이야기' 카테고리의 다른 글
자료구조 시리즈 7편 (2) | 2025.04.22 |
---|---|
자료구조 시리즈 6편 (2) | 2025.04.21 |
자료구조 시리즈 4편 (0) | 2025.04.21 |
자료구조 시리즈 3편 (0) | 2025.04.21 |
자료구조 시리즈 2편 (0) | 2025.04.20 |