알고리즘

Python으로 구현하는 큐(Queue)

HHB 2023. 12. 1. 23:59

큐(Queue)는 선입선출의 개념을 가진 자료구조다.

class Node:
    def __init__(self, value):
        self.data = value
        self.link = None
        
class queue:
    def __init__(self):
        self.head = None
    
    def print_queue(self):
        top = self.head
        pq = []
        while (top.link is not None):
            pq.append(top.data)
            top = top.link
        pq.append(top.data)
        print('->'.join(map(str, pq)) + "->None")

    def push(self, value):
        if self.head is None:
            self.head = Node(value)
        else:
            top = self.head
            while (top.link is not None):
                top = top.link
            
            top.link = Node(value)
    
    def pop(self):
        self.head = self.head.link

q = queue()
q.push(1)
q.push(2)
q.push(3)
q.print_queue()
q.pop()
q.print_queue()
728x90
반응형
LIST