Python双队列实现栈,一个用来输入,一个用来输出:使用双队列,则出队的元素可存入另一个队列。
思路:用enqueue1保存元素,enqueue2用来做临时过度的容器。
pop操作:enqueue1出队size-1次,每次出队的元素立即add入enqueue2。enqueue1中剩余的元素就是队尾元素,将该元素poll并返回。然后,让enqueue1和enqueue2互换身份,满足最初的规划。
top操作:同pop操作,只不过队尾元素poll后,还需再次add入enqueue2,然后queue1和queue2互换身份。
empty操作:由于是enqueue1保存元素,所以直接调用enqueue1的add。