Leetcode 225:用队列实现栈

news/2024/9/23 18:24:37/

请你仅使用两个队列实现一个后入先出(LIFO)的栈,并支持普通栈的全部四种操作(pushtoppop 和 empty)。

实现 MyStack 类:

  • void push(int x) 将元素 x 压入栈顶。
  • int pop() 移除并返回栈顶元素。
  • int top() 返回栈顶元素。
  • boolean empty() 如果栈是空的,返回 true ;否则,返回 false 。

思路:

1.用queue2作为辅助存储空间,将queue1中的顺序变为栈的顺序

2.执行栈操作。

java">import java.util.LinkedList;
import java.util.Queue;class MyStack {Queue<Integer> queue1;Queue<Integer> queue2;public MyStack() {queue1 = new LinkedList<Integer>();queue2 = new LinkedList<Integer>();}//入栈public void push(int x) {//思路,将queue1中的顺序变为与栈中相同queue2.offer(x);while (!queue1.isEmpty()){queue2.offer(queue1.poll());}Queue<Integer> queueTemp;queueTemp = queue1;queue1 = queue2;queue2 = queueTemp; // 最后交换queue1和queue2,将元素都放到queue1中}//出栈public int pop() {return queue1.poll();}public int top() {return queue1.peek();}public boolean empty() {return queue1.isEmpty();}
}


http://www.ppmy.cn/news/1430738.html

相关文章

【LeetCode热题100】【二分查找】搜索旋转排序数组

题目链接&#xff1a;33. 搜索旋转排序数组 - 力扣&#xff08;LeetCode&#xff09; 同样是要在数组中查找元素&#xff0c;不同的是这次的数组是这样//的&#xff0c;升序数组&#xff0c;但是往前移动了一下&#xff0c;也就是两段升序&#xff0c;456123这样 看了一位天才…

将组件 赋值给变量li 想拿到 组件的html页面结构 但是 打印出来的是 文件路径 该如何实现呢?

需求 import { ref } from vue; import refrigerationRight from /views/bim3D/components/right/refrigerationRight.vue const liref({lis:refrigerationRight }) const refrigerationclick()>{console.log(li) }##方法 import { createApp } from vue; import refriger…

线性表的顺序存储如何设计实现?

如何存储 顺序及链式实现 计算机中的状态

特殊类的设计、C++四种类型转换

&#x1f436;博主主页&#xff1a;ᰔᩚ. 一怀明月ꦿ ❤️‍&#x1f525;专栏系列&#xff1a;线性代数&#xff0c;C初学者入门训练&#xff0c;题解C&#xff0c;C的使用文章&#xff0c;「初学」C &#x1f525;座右铭&#xff1a;“不要等到什么都没有了&#xff0c;才下…

双线性插值计算手动实现以及原理

双线性插值计算手动实现以及原理 代码原理 代码 先贴代码吧&#xff0c;原理其实也比较简单&#xff0c;看代码基本也就理解了&#xff0c;时间太晚了&#xff0c;原理后续再补吧。 import torch from torch.nn import functional as F import numpy as np from itertools im…

Rust 模式匹配中的 和 ref

一、Rust & 和 ref 1.Rust的ref有什么用 根据Rust官方文档https://doc.rust-lang.org/std/keyword.ref.html Rust ref 主要用在模式匹配match的所有权问题中。 ref在 Rust中&#xff0c;也是声明一个指针类型变量&#xff0c;进一步说明ref和&在其它方面区别&#xf…

AI重建粒子轨迹,发现新物理学

目录 二Sora冲击还没来&#xff0c;但智能家居人已经开始焦虑了&#xff01; 一、智能家居新革命&#xff1a;AIoH 二、AI技术接入智能家居&#xff0c;未来价值几何&#xff1f; 三、AI 智能家居&#xff0c;不是纸上谈兵 四、结语 电子学在核物理领域从来都不是一帆风顺…

【Linux】权限(shell运行原理、概念,Linux权限)

&#x1f308;个人主页&#xff1a;秦jh__https://blog.csdn.net/qinjh_?spm1010.2135.3001.5343&#x1f525; 系列专栏&#xff1a;https://blog.csdn.net/qinjh_/category_12625432.html 目录 shell命令以及运行原理 创建和删除用户 创建新普通用户 删除用户 Linux权…