剑指offer 简单题目1
1、用两个栈实现队列的push和pop;
栈:先进后出
队列:先进先出
push:stack1直接存
pop:stack1的栈顶开始,存入stack2中;(stack1为顺序存入,stack2为倒序存入)
例:
stack1: 栈底先进(队首先进)1 2 3 4 5(队尾)栈顶;
stack2: 栈底(队尾)5 4 3 2 1(队首先出)栈顶先出;
但是!pop时若stack2为空,需要先将stack1倒序存入stack2(同时stack1.pop()