栈是后进先出原则
队列是先进先出原则
用两个栈实现队列,也就是用后进先出实现先进先出。
先定义两个栈queue1和queue2,每次添加元素的时候都添加到queue1里,删除元素的时候删除queue2中的元素。如果queue2里没元素,就循环的把queue1中的元素pop()出来添加到queue2里,每次都取queue1最后一个元素。此时再对queue2进行pop(),pop()出来的元素就是按顺序添加到queue1中的元素,也遵循了队列的先进先出原则
我用python写其实还不难,看代码:
提交评论
您尚未登录 :-( ,登录之后方可评论 登录 or 注册