当前位置:网站首页>LeetCode - 225 用队列实现栈
LeetCode - 225 用队列实现栈
2022-07-25 15:32:00 【三岁就很萌@D】


使用两个队列

class MyStack {
//使用两个队列实现栈
//主队列
private Deque<Integer> deque1;
//辅助队列
private Deque<Integer> deque2;
public MyStack() {
deque1 = new LinkedList<>();
deque2 = new LinkedList<>();
}
public void push(int x) {
//首先把主队列的所有值放入辅助队列中
while(deque1.size() != 0){
deque2.offerLast(deque1.pollFirst());
}
//将x入主队列
deque1.offerLast(x);
//将辅助队列的值重新放入主队列中
while(deque2.size() != 0){
deque1.offerLast(deque2.pollFirst());
}
//此时后入队列的x已经位于队头
}
public int pop() {
return deque1.pollFirst();
}
public int top() {
return deque1.peekFirst();
}
public boolean empty() {
return deque1.size() == 0;
}
}
使用一个队列

class MyStack {
//使用一个队列实现栈
private Deque<Integer> deque;
public MyStack() {
deque = new LinkedList<>();
}
public void push(int x) {
//队列中当前有多少个值
int qsize = deque.size();
//将x入队列
deque.offerLast(x);
//将队列中前qsize个值放入队尾
while(qsize > 0){
deque.offerLast(deque.pollFirst());
qsize--;
}
//此时后入队列的x已经位于队头
}
public int pop() {
return deque.pollFirst();
}
public int top() {
return deque.peekFirst();
}
public boolean empty() {
return deque.size() == 0;
}
}
边栏推荐
猜你喜欢

ML - natural language processing - Key Technologies

ML - 语音 - 传统语音模型

matlab--CVX优化工具包安装

Get the ask code corresponding to the key pressed by the keyboard

matlab 优化工具 manopt 安装

PAT甲级1152 Google Recruitment (20 分)

ML - 语音 - 语音处理介绍

No tracked branch configured for branch xxx or the branch doesn‘t exist. To make your branch trac

ML - natural language processing - Basics

盒子躲避鼠标
随机推荐
在网页上实现任意格式的音视频快速播放功能的开发总结。
MATLAB 如何生产随机复序列
matlab---错误使用 var 数据类型无效。第一个输入参数必须为单精度值或双精度值
Args parameter parsing
2019 Shaanxi Provincial race K-variant Dijstra
Endnote 添加中文GBT7714样式 word中如何引用文献
Pat grade a 1152 Google recruitment (20 points)
Endnote 无法编辑range 解决
Pytorch学习笔记--常用函数总结3
看到很多App出现闪烁的图片,特别是会员页面
In depth: micro and macro tasks
分布式原理 - 什么是分布式系统
小波变换--dwt2 与wavedec2
理解“平均负载”
UITextField的inputView和inputAccessoryView注意点
Spark SQL UDF function
Binary complement
C#精挑整理知识要点10 泛型(建议收藏)
Idea护眼色设置
ML - Speech - advanced speech model