두 개의 스택만 사용하여 첫 번째 아웃(FIFO) 큐에서 첫 번째 대기열을 구현합니다.
클래스 구현:MyQueue
void push(int x) 요소 x를 큐 뒤쪽으로 푸시합니다.
int pop() 큐 의 전면에서 요소를 제거하고 반환합니다.
int peek() 큐 의 전면에 요소를 반환합니다.
boolean empty() 그렇지 않으면 큐가 비어 있으면 반환됩니다.truefalse
23번과 반대로 큐를 스택으로 구현해야한다.
class MyQueue:
def __init__(self):
self.input = []
self.output = []
def push(self, x):
self.input.append(x)
def pop(self):
self.peek()
return self.output.pop()
def peek(self):
# output이 없으면 모두 재입력
if not self.output:
while self.input:
self.output.append(self.input.pop())
return self.output[-1]
def empty(self):
return self.input == [] and self.output == []