큐 (Queue)

honeybeeveloper·2022년 8월 10일
0

큐(Queue)

데이터가 입력되면 입력되는 순서대로 쌓고, 먼저 들어온 것부터 먼저 사용하는(FIFO, First In First Out) 자료구조.

큐 자료구조의 용도

큐는 대표적으로 현재 수행 중인 프로세스를 관리할 때 사용한다.
여러 프로세스가 수행 중인데, 새로운 프로세스가 수행되어야 하는 경우 기존에 수행되던 프로세스 중에서 가장 먼저 메모리에 올라온 프로세스가 아웃되고, 새로운 프로세스를 메모리에 올린다. 이 경우 운영체제는 수행 중인 프로세스를 큐의 형태로 관리한다.

큐 자료구조 구현

python 3.8
# Queue

class Queue(object):
    def __init__(self):
        self.queue = []

    def is_empty(self):
        if self.queue:
            return False
        return True

    def enqueue(self, data):
        self.queue.append(data)

    def dequeue(self):
        deleted = None
        if self.is_empty():
            print('Queue is empty!')
        else:
            deleted = self.queue.pop(0)
        return deleted





github : https://github.com/honeybeeveloper/data-structure/blob/develop/queue.py
참고 : 책 <그림으로 정리한 알고리즘과 자료구조>

profile
꿀벌같은 개발자가 되고 싶습니다.

0개의 댓글