큐(queue) 란?
큐는 메모리 안 데이터들을 더욱 효율적으로 다루기 위해 만들어진 데이터 참조방식
구조는 '선입선출'의 구조를 가지고 있으며 양쪽 끝에서만 데이터를 넣거나 뺄 수 있는 선형구조입니다. 즉, 제일 처음에 들어온 데이터가 제일 빨리 나가는 방식입니다.
은행 창구 줄서기 예로 든 설명입니다.
(1) Enqueue : 큐 맨 뒤에 어떠한 요소를 추가, 마지막으로 온 손님에게 번호표 발부
(2) Dequeue : 큐 맨 앞쪽의 요소를 삭제, 창구에서 서비스를 받은 손님의 번호표를 대기목록에서 삭제
(3) Peek : front에 위치한 데이터를 읽음, 다음 서비스를 받을 손님이 누구인지 확인
(4) front: 큐의 맨 앞의 위치(인덱스), 다음 서비스를 받을 손님의 번호
(5) rear: 큐의 맨 뒤의 위치(인덱스), 마지막에 온 손님의 번호
큐(queue) 기능
출처 : https://ai-rtistic.com/2022/01/22/data-structure-queue/
스택과 비슷하게 큐에서도 몇가지 중요한 기능을 할 수 있습니다.
- 데이터 삽입 (push(), offer(), add()) : Enqueue
- 데이터 삭제 (pop(),poll()) : Dequeue
- 데이터 확인 (peek()) : 가장 처음(front)에 있는 데이터를 확인합니다.
큐(queue) 예제
추가 예정
'몰아 넣기' 카테고리의 다른 글
[IT] 대칭키와 비대칭키에 대해서 (0) | 2022.08.25 |
---|---|
[OOP] 객체 지향 프로그래밍이란? (0) | 2022.08.22 |
[알고리즘] 시간 복잡도와 Big-O 대해서 간단한 예제 (0) | 2022.08.18 |
[Collection] HashMap의 특징, 사용법 (0) | 2022.08.16 |
[JUnit5] JUnit5 개념 및 간단한 사용법 (0) | 2022.08.13 |