1. 题目
2. 考点
栈的数据结构为 先进后出
队列的数据结构 先进先出
3. 核心代码
class Queue(object):
def __init__(self):
self.stack_in = []
self.stack_out = []
def add(self, num):
self.stack_in.append(num)
def in2out(self):
tmp = []
if self.stack_out:
tmp = self.stack_out[:]
self.stack_out = []
while self.stack_in:
self.stack_out.append(self.stack_in.pop())
self.stack_out.extend(tmp)
def poll(self):
self.in2out()
return self.stack_out.pop()
def peek(self):
self.in2out()
return self.stack_out[-1]
def inp():
q = Queue()
n = int(input())
for _ in range(n):
v = input()
if v.startswith('add'):
num = int(v.split(' ')[1])
q.add(num)
elif v.startswith('poll'):
q.poll()
elif v.startswith('peek'):
print(q.peek())
if __name__ == '__main__':
inp()