两个栈实现队列的我们见的多了,但是该题只能用一个栈实现,那么思路是?
提示:函数调用不就是利用了栈么?那么一个函数调用自己是不是就是用到栈了呢?函数调用自己是不是很自然的想到了递归?
<span style="font-size:18px;">l = []
def QueueOut():
if len(l) > 0:
tmp = l.pop()
if len(l) > 0:
item = QueueOut()
l.append(tmp)
else:
item = tmp
return item</span>