선형자료구조 - 큐) 복습을 위해 작성하는 글 2023-04-07

rizz·2023년 4월 7일
0

자료구조

목록 보기
5/12

📒 갈무리 - 큐(Queue)

📌 큐(Queue)란?

- 데이터를 일렬로 나열한 구조(먼저 줄을 선 사람이 먼저 나갈 수 있는 상황)

- FIFO(First-In-First-Out) : 선입선출 구조

Enqueue : 저장 공간에 데이터를 입력하는 작업

Dequeue : 저장 공간에서 데이터를 빼는 작업

- 앞에서부터 데이터를 빼낸다.

- 가장 먼저 들어온 데이터를 가장 먼저 빼낸다.

Front : 데이터가 나오는 출구

Rear : 데이터가 들어오는 입구

인덱스 = Rear % 자료구조의 크기

 

📌 원형 큐(환형 큐)

- 선형 큐의 문제점을 보완한 큐

선형 큐의 문제점 : 배열로 큐를 선언할 시 큐의 삭제와 생성이 계속 일어났을 때, 마지막 배열에 도달 후 실제로는 데이터 공간이 남아 있지만 Overflow가 발생함

- front가 큐의 끝에 닿게 되면 큐의 맨 앞으로 자료를 보내어 원형으로 연결하는 방식이다.

 

📌 우선순위 큐

- 우선순위를 정해서 정렬하여 데이터를 관리하는 큐

- 들어온 데이터들을 별도의 우선순위에 관련한 가중치의 값을 가지고 있고, 이 값을 데이터가 들어올 때 비교해서 재정렬함

- 우선순위가 높은 데이터가 먼저 나가는 형태

 

📌 데큐(Double-ende Queue)

- 큐와 스택의 장점을 합쳐놓은 자료구조

- front와 rear가 양쪽으로 각각 존재하기 때문에 양쪽 끝에서의 삽입과 삭제가 가능하다.

 

💡 TIP

리스트를 사용하여 큐(Queue)를 직접 구현해 보고, 큐의 종류와 특성에 대해 더 깊이 공부해 보자.

profile
복습하기 위해 쓰는 글

0개의 댓글