剑指Offer-【面试题07:两个栈实现队列】
2016-11-18 16:53
274 查看
package com.cxz.question7; import java.util.Stack; /** * 用两个栈实现一个队列。队列的声明如下,请实现它的两个函数appendTail 和deleteHead,分别完成在队列尾部插入结点和在队列头部删除结点的功能。 * @author CXZ * */ public class Demo7 { public static class MList<T> { //插入栈 private Stack<T> stack1 = new Stack<>(); //弹出栈 private Stack<T> stack2 = new Stack<>(); public MList() { } //添加操作,在队列尾部插入节点 public void appendTail(T t) { stack1.add(t); } //删除操作,在队列头部删除节点 public T deleteHead() { if (stack2.isEmpty()) { while (!stack1.isEmpty()) { stack2.add(stack1.pop()); } } if (stack2.isEmpty()) { throw new RuntimeException("No more element"); } return stack2.pop(); } } }
相关文章推荐
- 剑指Offer_面试题07_用两个栈实现队列
- 剑指offer-面试题07-衍生题目:用两个队列实现栈
- [剑指offer][面试题07-扩展]用两个队列实现栈
- 剑指offer-面试题07-用两个栈实现队列
- [剑指offer][面试题07]用两个栈实现队列
- 【剑指offer】面试题07:用两个栈实现队列
- 剑指offer--面试题7:用两个栈实现队列--Java实现
- 【练习笔记】剑指offer-面试题7 :用两个栈实现队列
- 【剑指offer】面试题7:用两个栈实现队列
- 【剑指offer】2.3.5栈和队列——面试题7:用两个栈实现队列
- 剑指offer面试题7:用两个栈实现队列
- 【剑指offer】面试题7:用两个栈实现队列
- 剑指 offer 面试题 7 : 用两个栈来实现队列
- 【剑指offer】面试题七:用两个栈实现队列
- 剑指offer之面试题7用两个栈实现一个队列
- 【剑指Offer学习】【面试题7:用两个栈实现队列】
- 剑指Offer:面试题7 用两个栈实现队列
- 剑指offer 面试题7 两个栈实现队列
- 剑指offer面试题java实现之题7:用两个栈模拟一个队列的入队和出队操作
- 剑指offer之面试题7:用两个栈实现队列