下面请跟着图老师小编一起来了解下解析如何用两个栈来实现队列的方法,精心挑选的内容希望大家喜欢,不要忘记点个赞哦!
【 tulaoshi.com - 编程语言 】
题目:如何用两个栈来实现队列,即实现队列的两个方法——appendTail(插入)和deleteHead(删除)。
分析:核心思想是一个栈正向存储,另外一个栈逆向存储。正向存储的栈用来插入,逆向存储的栈用来删除。
实现的Java代码如下:
代码如下:
import java.util.Stack;
public class QueneWithTwoStacksE {
private StackE stack1;
private StackE stack2;
public void appendTail(E e) {
stack1.push(e);
}
public E deleteHead() throws Exception {
if (stack2.size() = 0) {
while (!stack1.isEmpty()) {
stack2.push(stack1.pop());
}
}
if (stack2.size() == 0) {
throw new Exception("Queue is empty!");
}
return stack2.pop();
}
}
来源:http://www.tulaoshi.com/n/20160219/1590404.html
看过《解析如何用两个栈来实现队列的方法》的人还看了以下文章 更多>>