본문 바로가기
CS 공부/자료구조

큐(Queue)란?

by 꼬질꼬질두부 2023. 10. 11.

📘 (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

댓글