Skip to content
IdionKim edited this page Jun 7, 2020 · 2 revisions

Queue

Author: Dion🐱

큐 자료구조

큐 자료구조의 특징

  • 먼저 들어간 항목이 먼저 나온다.(FIFO)
  • 대표적인 예로는 은행 업무 대기열을 들 수 있다.
  • 스택과의 차이점은 항목을 제거할 때, 가장 처음에 추가된 항목이 제거된다는 것이 차이점이다.

큐 자료구조의 기능

  • Enqueue: Insertion(삽입) 큐의 맨 뒷부분에 항목을 추가한다.

  • Dequeue: Deletion(제거) 큐의 맨 앞부분의 항목을 제거하고 그 값을 반환한다.

  • Peek: 맨 앞의 자료를 확인만 한다.(Stack과 동일)

큐 자료구조의 요소 명칭

  • Front: 큐의 맨 앞 위치의 참조 값
  • Rear: 큐의 맨 뒤 위치의 참조 값

참고할 것

  • 우선순위 큐: 원소들에 우선순위를 매겨서 넣을 때의 순서와 상관없이 뺄 때에는 우선순위가 높은 원소부터 빼내는 것이다.

    대표적인 자료구조로 힙이 있다.

  • 덱(Deque; Double Ended Queue): 양쪽에서 삽입/제거가능

사용 용도

어떠한 작업이나 데이터를 순서대로 처리하기 위한 용도

소감

  • Dion
    • 다 하고 적기
  • Ever
    • 다 하고 적기
  • Hamill
    • 다 하고 적기
  • Lynn
    • 다 하고 적기
  • Sunny
    • 큐에선 EmptyQueueException()가 없다. NoSuchElementException()를 처리해야해서 신기하다. 처음에 큐를 만든 사람이 Exception이름에 Queue를 적지 않은걸 보니 큐가 스택보다 덜 중요하다고 생각했나보다. 알고리즘책에 의하면 연결리스트를 이용한 프로그래밍은 온갖 가지의 도전적이고 골치아픈 디버깅 이슈를 수반하는 것으로 악명이 높다고 한다. 왜 그런지도 찾아보고 연결리스트가 아닌 다른 방법이 있는지 찾아보자.
Clone this wiki locally