📘 큐(Queue)란 무엇인가요?
FIFO(First In, First Out)
먼저 들어간 데이터가 먼저 나오는 구조
🌟 큐의 장단점
👍 장점
- 정렬된 데이터 처리
: 큐는 데이터를 순서대로 처리하고 싶을 때 유용합니다.
- 실생활 문제 모델링
: 실제 세계의 많은 시나리오(대기열, 프린터의 인쇄 작업 등)를 큐를 이용하여 쉽게 모델링 할 수 있습니다.
👎 단점
- 데이터 접근 제한
: 큐에서는 맨 앞의 데이터만 접근 가능해서 나머지 데이터들을 접근하기 위해서는 데이터를 하나씩 빼야 합니다.
- 메모리 용량
: 때로는 큐의 길이가 커지면서 메모리 관리가 어려워질 수 있습니다.
🕒 큐의 시간 복잡도
데이터 접근 시간: O(n) - 특정 데이터에 접근하기 위해서는 순차 접근이 필요
데이터 삽입/삭제 시간: O(1) - 큐의 시작점(프론트) 또는 끝점(리어)에서 데이터 삽입 및 삭제가 일어남
🤔 큐는 언제 사용하면 좋을까요?
- 데이터의 순서가 중요한 경우
- 데이터를 버퍼링해야 하는 경우
ex) 프린터의 인쇄 대기열
- 너비 우선 탐색(BFS)에서 사용
'CS 공부 > 자료구조' 카테고리의 다른 글
스택(Stack)이란? (0) | 2023.10.11 |
---|---|
연결 리스트(Linked List)란? (0) | 2023.10.11 |
배열(Array)이란? (1) | 2023.10.11 |
댓글