225 Implement Stack using Queues
来源:互联网 发布:断电mysql修复 编辑:程序博客网 时间:2024/05/21 10:12
class MyStack {
Queue<Integer> queue = new LinkedList<Integer>();
Queue<Integer> tmp = new LinkedList<Integer>();
// Push element x onto stack.
public void push(int x) {
queue.add(x);
}
// Removes the element on top of the stack.
public void pop() {
int size = queue.size();
if(size == 0) return;
for(int i=0;i<size-1;++i){
int tval = queue.peek();
tmp.add(tval);
queue.remove();
}
queue.remove();
int tmpSize = tmp.size();
for(int j=0;j<tmpSize;++j){
int tmpVal = tmp.peek();
queue.add(tmpVal);
tmp.remove();
}
}
// Get the top element.
public int top() {
int topVal = 0;
int size = queue.size();
for(int i=0;i<size-1;++i){
int tval = queue.peek();
tmp.add(tval);
queue.remove();
}
topVal = queue.peek();
tmp.add(topVal);
queue.remove();
int tmpSize = tmp.size();
for(int j=0;j<tmpSize;++j){
int tmpVal = tmp.peek();
queue.add(tmpVal);
tmp.remove();
}
return topVal;
}
// Return whether the stack is empty.
public boolean empty() {
return queue.isEmpty();
}
}
Queue<Integer> queue = new LinkedList<Integer>();
Queue<Integer> tmp = new LinkedList<Integer>();
// Push element x onto stack.
public void push(int x) {
queue.add(x);
}
// Removes the element on top of the stack.
public void pop() {
int size = queue.size();
if(size == 0) return;
for(int i=0;i<size-1;++i){
int tval = queue.peek();
tmp.add(tval);
queue.remove();
}
queue.remove();
int tmpSize = tmp.size();
for(int j=0;j<tmpSize;++j){
int tmpVal = tmp.peek();
queue.add(tmpVal);
tmp.remove();
}
}
// Get the top element.
public int top() {
int topVal = 0;
int size = queue.size();
for(int i=0;i<size-1;++i){
int tval = queue.peek();
tmp.add(tval);
queue.remove();
}
topVal = queue.peek();
tmp.add(topVal);
queue.remove();
int tmpSize = tmp.size();
for(int j=0;j<tmpSize;++j){
int tmpVal = tmp.peek();
queue.add(tmpVal);
tmp.remove();
}
return topVal;
}
// Return whether the stack is empty.
public boolean empty() {
return queue.isEmpty();
}
}
0 0
- 225 Implement Stack using Queues
- 225Implement Stack using Queues
- [225]Implement Stack using Queues
- [225]Implement Stack using Queues
- 225 Implement Stack using Queues
- [225] Implement Stack using Queues
- Implement Stack using Queues
- Implement Stack using Queues
- Implement Stack using Queues
- Implement Stack using Queues
- Implement Stack using Queues
- Implement Stack using Queues
- Implement Stack using Queues
- Implement Stack using Queues
- Implement Stack using Queues
- Implement Stack using Queues
- Implement Stack using Queues
- Implement Stack using Queues
- Problem E: AB编程题--世界杯小组赛
- 杀死进入死循环的进程
- C语言指针总结
- css 圆角写法
- POJ1068 Parencodings
- 225 Implement Stack using Queues
- 关于:after和:before伪类的用法,以及让浮动占据高度问题。
- The supeority of film faced plywood
- Scrapy框架 学习笔记2
- 作为计算机行业新人的思考
- git 使用整理
- PPT:阿里全息大数据构建与应用
- java使用ganymed-ssh2执行linux命令
- 九度oj 1069