큐(Queue) - Queue 활용 사례, Enqueue(), Dequeue(), 자료구조 비교, 도식도
CODEDRAGON ㆍDevelopment/C#, Xamarin
반응형
큐(Queue)
- 대기열
- Queue의 구조는 도로에 뚫려져 일정구간의 일방통행인 터털형태와 동일한 원리입니다.
- 요소(Element)가 들어가는 입구와 요소(Element)가 나오는 출구가 따로 준비 되어 있어 가장 먼저 들어간 요소(Element)가 가장 먼저 나오는 선입선출, first-in-first-out(FIFO)방식의 자료구조입니다.
Queue 활용 사례
- OS CPU의 연산 처리시 작업 대기
- 프린터가 출력하는 문서 대기시
- 동영상 스트리밍 서비스에서 컨텐츠 버퍼링시
Enqueue()
대기행렬에 데이터를 입력하는 메소드
데이터 입력은 한쪽에서만 이루어집니다.
Queue queue = new Queue(); queue.Enqueue('A'); queue.Enqueue('B'); queue.Enqueue('C'); queue.Enqueue('D'); queue.Enqueue('E'); |
들어가는 순서 | A -> B -> C -> D |
나가는 순서 | A -> B -> C -> D |
Dequeue()
- 대기행렬에서 데이터를 출력하는 메소드
- 제일 앞에 있던 항목의 데이터가 실제로 꺼내지고 그 뒤에 있던 항목이 제일 앞으로 옮겨지게 됩니다.
queue.Dequeue() |
자료구조 비교
구분 | 배열(array) | 스택(stack) | 큐(queue) |
접근방식 | 임의 접근 | 임의 접근 | 순차 접근 |
구조 | LIFO | LIFO | FIFO |
'Development > C#, Xamarin' 카테고리의 다른 글
Microsoft Bot Framework Resources (0) | 2017.02.13 |
---|---|
UWP(유니버설 Windows 플랫폼) 앱이란? (0) | 2017.02.08 |
What’s New in C# 7.0 (0) | 2016.08.29 |
모바일 애플리케이션 개발을 위한 Microsoft 플랫폼 및 도구 백서 (0) | 2016.08.08 |
[Visual Studio] 프로젝트 생성시 폴더관리 - 한폴더에 프로젝트 관리하기 (0) | 2016.07.03 |