两个队列实现栈
来源:互联网 发布:nike高仿淘宝 编辑:程序博客网 时间:2024/05/20 06:25
本程序是利用两个单向队列实现栈(实际中是使用双向队列,但是只用了其单向性质)
import java.util.*;class StackbyQueue<T>{T x=null;private LinkedList<T> list1;private LinkedList<T> list2;private int size;public StackbyQueue(){size =0;list1 = new LinkedList<T>();list2 = new LinkedList<T>();}public void push(T x){list1.add(x);size++;}public T pop(){while(list1.size()>1){list2.add(list1.poll());}x = list1.poll();size--;while(!list2.isEmpty()){list1.add(list2.poll());}return x;}public String toString(){return list1.toString();}}public class scanner{public static void main(String args[]) {StackbyQueue<String> stack = new StackbyQueue<String>();stack.push("1");stack.push("2");stack.push("3");System.out.println(stack.toString());System.out.println(stack.pop());System.out.println(stack.pop());System.out.println(stack.toString());stack.push("4");System.out.println(stack.toString());}}
结果如下:
[1, 2, 3]
3
2
[1]
[1, 4]
4
0 0
- 两个栈实现队列
- 两个队列实现栈
- 两个栈实现队列
- 两个栈实现队列
- 两个栈实现队列
- 两个队列实现栈
- 两个栈实现队列
- 两个 栈 实现队列
- 两个栈实现队列
- 两个队列实现栈
- 两个栈实现队列
- 两个栈实现队列
- 两个队列实现栈
- 两个栈实现队列
- 两个栈实现队列
- 两个栈实现队列
- 队列--两个栈实现
- 两个队列实现栈
- findContours和drawContours的使用
- uva 11988Broken Keyboard (a.k.a. Beiju Text)
- 让你的Google跑起来
- 记录一笔-折半插入排序
- rac ntp配置
- 两个队列实现栈
- noj 2107 有趣的区间异或值(异或,找规律)
- NYOJ 5 Binary String Matching【string find的运用】
- 一些项目中遇到的小问题
- service的简单通信③
- C++ 虚继承
- CSU 1779 NBUT 1641 “错误的算法”(这是题目名)
- 深入理解HTTP协议
- React Native商城项目实战04 - 封装TabNavigator.Item的创建