进栈:元素入队列Q1
出栈:判断如果队列Q1只有一个元素,则直接出队。否则,把队Q1中的元素出队并入队Q2,直到队Q1中只有一个元素,再直接出队。为了下一次继续操作,互换队A和队B。
class Solution:
def __init__(self):
self.queue1 = []
self.queue2 = []
def add(self, node):
self.queue1.append(node)
def dele(self):
# return xx
if self.queue1 == []:
return None
while len(self.queue1) != 1:
self.queue2.append(self.queue1.pop(0))
# 交换是为了下一次的pop
self.queue1, self.queue2 = self.queue2, self.queue1
return self.queue2.pop()
if __name__ == '__main__':
data = Solution()
data.add('a')
data.add('b')
data.add('c')
print(data.dele())
print(data.dele())
print(data.dele())