-
[자료구조] 큐 (Queue)Algorithms & Data Structure 2022. 1. 13. 21:57
Queue란 무엇인가?
Resource : https://tutsmaster.org/how-to-represent-stack-in-c-data-structure/ - 큐는 가장 먼저 넣은 데이터를 가장 먼저 꺼낼 수 있는 데이터 구조이다.
- FIFO 또는 LILO 정책.
- 즉, 스택 과는 반대이다.
- Enqueue : 데이터 넣기
- Dequeue : 데이터 빼기
Queue()로 큐 만들기
import queue data_queue = queue.Queue() #데이터 입력 data_queue.put("Good day") data_queue.put(1) #큐 크기 출력 data_queue.qsize() #큐에 입력된 데이터 출력 data_queue.get()
실행 결과 LIFO Queue()
마지막 넣은 데이터가 먼저 출력되는 구조.
import queue data_queue = queue.LifoQueue() data_queue.put("Good") data_queue.put("Day") data_queue.get(1)
실행 결과 Priority Queue
데이터 입력 당시 우선순위에 따라 데이터가 출력되는 구조.
import queue data_queue = queue.PriorityQueue() data_queue.put((3, "Olympic")) data_queue.put((2, "Gold Medalist")) data_queue.put((1, "An San")) #데이터 출력 data_queue.get()
실행 결과 우선순위가 가장 높은 데이터가 출력된다. 본 내용은 패스트캠퍼스 올인원 알고리즘 강좌 내용을 요약/정리한 노트입니다.
'Algorithms & Data Structure' 카테고리의 다른 글
[시간 복잡도] 알고리즘 복잡도 표현 방법 (0) 2022.01.18 [자료구조] 연결 리스트 (Linked List) (0) 2022.01.14 [자료구조] 스택 (Stack) (0) 2022.01.13 [알고리즘] 탐욕 알고리즘 (Greedy Algorithm) (0) 2021.08.22 깊이 우선 탐색 (Depth-First Search) (0) 2021.08.20