剑指offer-用两个栈实现队列
import java.util.Stack;
//这道题的关键是,理解栈和队列两种数据结构的实现方式即可
//因为栈是先进后出的,而队列是先进先出的,所以用个中间栈转换一次即可
public class Solution {
//新建两个栈
Stack<Integer> stack1 = new Stack<Integer>();
Stack<Integer> stack2 = new Stack<Integer>();
//放入元素
public void push(int node) {
stack1.push(node);
}
//出栈,将第一个入栈的元素弹出后,放入第二个栈
public int pop() {
if(stack2.size()<=0){
while(stack1.size() != 0){
stack2.push(stack1.pop());
}
}
//最后,出栈即可
return stack2.pop();
}
}
[ 版权声明 ]:
本文所有权归作者本人,文中参考的部分已经做了标记!
商业用途转载请联系作者授权!
非商业用途转载,请标明本文链接及出处!

浙公网安备 33010602011771号