-
Notifications
You must be signed in to change notification settings - Fork 0
Queue
IdionKim edited this page Jun 7, 2020
·
2 revisions
Author: Dion🐱
- 먼저 들어간 항목이 먼저 나온다.(FIFO)
- 대표적인 예로는 은행 업무 대기열을 들 수 있다.
- 스택과의 차이점은 항목을 제거할 때, 가장 처음에 추가된 항목이 제거된다는 것이 차이점이다.
-
Enqueue: Insertion(삽입) 큐의 맨 뒷부분에 항목을 추가한다.
-
Dequeue: Deletion(제거) 큐의 맨 앞부분의 항목을 제거하고 그 값을 반환한다.
-
Peek: 맨 앞의 자료를 확인만 한다.(Stack과 동일)
- Front: 큐의 맨 앞 위치의 참조 값
- Rear: 큐의 맨 뒤 위치의 참조 값
-
우선순위 큐: 원소들에 우선순위를 매겨서 넣을 때의 순서와 상관없이 뺄 때에는 우선순위가 높은 원소부터 빼내는 것이다.
대표적인 자료구조로 힙이 있다.
-
덱(Deque; Double Ended Queue): 양쪽에서 삽입/제거가능
어떠한 작업이나 데이터를 순서대로 처리하기 위한 용도
- Dion
- 다 하고 적기
- Ever
- 다 하고 적기
- Hamill
- 다 하고 적기
- Lynn
- 다 하고 적기
- Sunny
- 큐에선 EmptyQueueException()가 없다. NoSuchElementException()를 처리해야해서 신기하다. 처음에 큐를 만든 사람이 Exception이름에 Queue를 적지 않은걸 보니 큐가 스택보다 덜 중요하다고 생각했나보다. 알고리즘책에 의하면 연결리스트를 이용한 프로그래밍은 온갖 가지의 도전적이고 골치아픈 디버깅 이슈를 수반하는 것으로 악명이 높다고 한다. 왜 그런지도 찾아보고 연결리스트가 아닌 다른 방법이 있는지 찾아보자.