큐(Queue)(with Python)

positivegirl·2021년 5월 5일
0

자료구조

목록 보기
4/4

큐는 대기 줄에 비유할 수 있다. 밥먹을 때 웨이팅을 하면 먼저 웨이팅을 한 고객부터 들어가게 된다. 나중에 온 사람일수록 나중에 들어가기때문에 흔히 '공정한' 자료구조라고 비유된다. 이러한 구조를 선입선출(First In First Out) 구조라고 한다.


[큐 예제.py]

from collections import deque

q = deque()

q.append(5)
q.append(2)
q.append(3)
q.append(7)
q.popleft()
q.append(1)
q.append(4)
q.popleft()

print(q)    #먼저 들어온 순서대로 출력
q.reverse() 
print(q)    #나중에 들어온 순서대로 출력

파이썬으로 큐를 구현할 때는 collections 모듈에서 제공하는 deque 자료구조를 활용하자. deque는 스택과 큐의 장점을 모두 채택한 것인데 데이터를 넣고 빼는 속도가 리스트 자료형에 비해 효율적이며 queue 라이브러리를 이용하는 것 보다 더 간단하다.
또한 deque 객체를 리스트 자료형으로 변경하고자 한다면 list() 메서드를 이용하면 된다. ( ex) list(q) )

0개의 댓글

관련 채용 정보