본 포스팅은 아래의 출처를 참고하여 정리한 것입니다.
https://www.youtube.com/watch?v=PIidtIBCjEg&list=PLsMufJgu5933ZkBCHS7bQTx0bncjwi4PK&index=1
enqueue
dequeue
append
front_index
append
)class Queue:
def __init__(self):
self.items = [] # 빈 리스트
self.front_index = 0
def enqueue(self, value):
self.items.append(value)
def dequeue(self):
if self.front_index == len(self.items): # 빈 리스트
print("Q is empty")
return None
else:
x = self.items[front_index]
self.front_index += 1
return x
deque
class 제공from collections import deque
deq = deque()
# 맨 왼쪽에 데이터를 삽입
deq.appendleft(9)
# 맨 오른쪽에 데이터를 삽입
deq.append(0)
# 맨 왼쪽 데이터를 반환 및 삭제
deq.popleft()
# 맨 오른쪽 데이터를 반환 및 삭제
deq.pop()
append(item)
: item을 데크의 오른쪽 끝에 삽입.appendleft(item)
: item을 데크의 왼쪽 끝에 삽입.pop()
: 데크의 오른쪽 끝 요소를 리턴하는 동시에 데크에서 삭제.popleft()
: 데크의 왼쪽 끝 요소를 리턴하는 동시에 데크에서 삭제.extend(list)
: 배열(list)을 순환하면서 데크의 오른쪽에 추가.extendleft(list)
: 배열(list)을 순환하면서 데크의 왼쪽에 추가.remove(item)
: item을 데크에서 찾아 삭제.rotate(n)
: 데크를 n만큼 회전(양수면 오른쪽, 음수면 왼쪽)