【用队列实现栈】【用栈实现队列】Leetcode 232 225

【用队列实现栈】【用栈实现队列】Leetcode 232 225

    • 队列的相关操作
    • 栈的相关操作
    • 用队列实现栈
    • 用栈实现队列

---------------🎈🎈题目链接 用队列实现栈🎈🎈-------------------
---------------🎈🎈题目链接 用栈实现队列🎈🎈-------------------

在这里插入图片描述
在这里插入图片描述

队列的相关操作

创建队列
Queue<Integer> myqueue = new LinkedList<>();
添加元素
myqueue.add();
队列最初的元素
myqueue.peek();
队列弹出元素:
myqueue.poll();
队列大小
myqueue.size();
队列是否为空
myqueue.isEmpty();

栈的相关操作

创建栈
Stack<Integer> mystack = new Stack<>();
添加元素
mystack.push();
栈顶元素
mystack.peek();
弹出栈顶元素:
mystack.pop();
栈大小
mystack.size();
栈是否为空
mystack.isEmpty();

用队列实现栈

class MyStack {Queue<Integer> myqueue;public MyStack() {myqueue = new LinkedList<>();}public void push(int x) {myqueue.add(x);}public int pop() {for(int i = 0; i < myqueue.size()-1; i++){myqueue.add(myqueue.poll());}return myqueue.poll();}public int top() {int top;for(int i = 0; i < myqueue.size()-1; i++){myqueue.add(myqueue.poll());}top = myqueue.peek();myqueue.add(myqueue.poll());return top;}public boolean empty() {if(myqueue.isEmpty()){return true;}else return false;}
}/*** Your MyStack object will be instantiated and called as such:* MyStack obj = new MyStack();* obj.push(x);* int param_2 = obj.pop();* int param_3 = obj.top();* boolean param_4 = obj.empty();*/

用栈实现队列

class MyQueue {Stack<Integer> mystackin;Stack<Integer> mystackout;public MyQueue() {mystackin = new Stack<>();mystackout = new Stack<>();}public void push(int x) {while(!mystackout.isEmpty()){mystackin.push(mystackout.pop());}mystackin.push(x);}public int pop() {while(!mystackin.isEmpty()){mystackout.push(mystackin.pop());}return mystackout.pop();}public int peek() {while(!mystackin.isEmpty()){mystackout.push(mystackin.pop());}return mystackout.peek();}public boolean empty() {if(mystackin.isEmpty() && mystackout.isEmpty()){return true;}else return false;}
}/*** Your MyQueue object will be instantiated and called as such:* MyQueue obj = new MyQueue();* obj.push(x);* int param_2 = obj.pop();* int param_3 = obj.peek();* boolean param_4 = obj.empty();*/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/628548.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

What is `ResponseEntity` does?

Further Reading &#xff1a; What does ResponseEntity do?

【Spring Boot 3】【数据源】自定义多数据源

【Spring Boot 3】【数据源】自定义多数据源 背景介绍开发环境开发步骤及源码工程目录结构总结背景 软件开发是一门实践性科学,对大多数人来说,学习一种新技术不是一开始就去深究其原理,而是先从做出一个可工作的DEMO入手。但在我个人学习和工作经历中,每次学习新技术总是…

如何引用R语言版本以及R包版本

在分析数据时&#xff0c;我们需要引用R语言的特定版本&#xff0c;以及使用R包的版本&#xff0c;其实R语言中有代码可以调用&#xff0c;下面介绍一下。 1&#xff0c;引用R语言 在R语言中键入&#xff1a; citation()结果&#xff1a; > citation()To cite R in publ…

TCP 的三次握手和四次挥手

Java 面试题 TCP 三次握手 第一次握手&#xff1a;客户端向服务端发送SYN包。报文中标志位SYN1&#xff0c;序列号seqx&#xff08;x为随机整数&#xff09;。此时客户端进入了 SYN_SEND 同步已发送状态。 第二次握手&#xff1a;服务端回复客户端SYNACK包。报文中标志位SYN1&…

用Python制作一个网站来介绍bicart

本文使用创作助手。 下面是一个使用Flask框架制作的bicart介绍网站的示例&#xff0c;其中包括美观的界面、背景颜色和背景音乐&#xff0c;以及图片轮播、描点、登录和注册功能。 from flask import Flask, render_template, request, redirect, url_for, sessionapp Flask…

宿舍管理系统的设计与实现:基于Spring Boot、Java、Vue.js和MySQL的完整解决方案

✍✍计算机编程指导师 ⭐⭐个人介绍&#xff1a;自己非常喜欢研究技术问题&#xff01;专业做Java、Python、微信小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。 ⛽⛽实战项目&#xff1a;有源码或者技术上的问题欢迎在评论区一起讨论交流&#xff01; ⚡⚡ Java实战 |…

双向链表的构建

上篇内容给大家带来了单链表的构建&#xff0c;那么本期内容继续给大家带来链表的相关内容----双向链表。 什么是双向链表&#xff1f;双向链表与单链表有什么区别&#xff1f; 在单链表中&#xff0c;咱们每个结点的指针域存放了后继指针&#xff0c;以便于链接每个结点&…

文理导航期刊投稿方式

《文理导航》杂志系国家新闻出版总署批准&#xff0c;内蒙古自治区文旅厅主管&#xff0c;内蒙古自治区北方文化研究院主办的&#xff0c;面向大中专院校、中小学教育的专业性教育刊物&#xff0c;阅读对象是关心教育事业发展的大中专院校、职业教育、中小学教育的专家、教研员…

大学生个性化旅游网站的设计与实现

大学生个性化旅游网站的设计与实现 摘要 如今的互联网技术也很成熟&#xff0c;原来生活中的很多线下服务也在逐渐的转型&#xff0c;传统线下旅游服务已经逐渐转变为线上旅游服务&#xff0c;现代新型线上旅游服务和之前的线下传统服务的不同之处在于线上服务是双向交流的&a…

01-k8s学习笔记之认识 Kubernetes

1、什么是 Kubernetes&#xff1f; Kubernetes 是一个开源的&#xff0c;用于管理云平台中多个主机上的容器化的应用&#xff0c; Kubernetes 的目标是让部署容器化的应用简单并且高效&#xff08;powerful&#xff09;&#xff0c; Kubernetes 提供了应用部署&#xff0c;规划…

Flask框架小程序后端分离开发学习笔记《1》网络知识

Flask框架小程序后端分离开发学习笔记《1》网络知识 Flask是使用python的后端&#xff0c;由于小程序需要后端开发&#xff0c;遂学习一下后端开发。 一、网址组成介绍 协议&#xff1a;http&#xff0c;https (https是加密的http)主机&#xff1a;g.cn zhihu.com之类的网址…

IP定位API接口:省、市、城市的adcode编码、所在城市矩形区域范围(VIP版)

IP定位API接口&#xff1a;省、市、城市的名称和adcode编码、所在城市矩形区域范围 本文提供一个IP定位查询接口&#xff1a;省、市、城市的名称adcode编码&#xff0c;并返回一个参考坐标本接口是收费的&#xff08;1分钱1次调用&#xff0c;免费的跳转链接查看&#xff0c;也…

嵌入式-Stm32-江科大基于寄存器点亮LED灯

文章目录 前言&#xff1a;一&#xff1a;搭建基于寄存器控制LED的工程二&#xff1a;用江科大的STM32板子实现基于寄存器点亮LED灯三&#xff1a;用非江科大stm32板子实现基于寄存器点亮LED灯道友&#xff1a;一星陨落&#xff0c;黯淡不了星空灿烂&#xff1b;一花凋零&#…

Flume 之自定义 Source

1、简介 Flume 自带 Source 有 Avro、Thrift、Netcat、Taildir、Kafka、Http等&#xff0c;有些场合比如我们指定访问接口获取数据当做 Flume 的 Source&#xff0c;像这种定制化的 Source 需要我们自己实现&#xff0c;下面我将介绍如何自定义实现 Source。 2、自定义实现 Fl…

Git 是什么?

Git 是什么&#xff1f; Git 是一个开源的分布式版本控制系统&#xff0c;用于敏捷高效地处理任何或小或大的项目。 Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。 Git 与常用的版本控制工具 CVS, Subversion 等不同&#xff0c;…

Cesium 模型压平

最近整理了下手上的代码&#xff0c;以下是对模型压平的说明。 原理是使用了customShader来重新设置了模型的着色器&#xff0c;通过修改模型顶点的坐标来实现了压平。 废话不多说&#xff0c;下面上代码&#xff1a; /*** class* description 3dtiles模型压平*/ class Flat…

推荐给前端程序员的5款浏览器插件

所谓“工欲善其事&#xff0c;必先利其器”。Chrome&#xff08;谷歌浏览器&#xff09; 应该是程序员或者互联网行业人员使用最多的浏览器了。而在日常开发中&#xff0c;下面几款 浏览器 扩展也许能让你的开发工作事半功倍 。 1、Vimium vimium 是一个旨在将你的双手从鼠标…

【力扣·每日一题】2645. 构造有效字符串的最小插入数(动态规划 贪心 滚动数组优化 C++ Go)

题目链接 题意 给你一个字符串 word &#xff0c;你可以向其中任何位置插入 “a”、“b” 或 “c” 任意次&#xff0c;返回使 word 有效 需要插入的最少字母数。 如果字符串可以由 “abc” 串联多次得到&#xff0c;则认为该字符串 有效 。 提示&#xff1a; 1 < w o r…

C++核心编程(包含:内存、函数、引用、类与对象、文件操作等)【持续更新】

&#x1f308;个人主页&#xff1a;godspeed_lucip &#x1f525; 系列专栏&#xff1a;C从基础到进阶 C核心编程&#x1f30f;1 内存分区模型&#x1f384;1.1 程序运行前&#x1f384;1.2 程序运行后&#x1f384;1.3 new操作符 &#x1f30f;2 引用&#x1f384;2.1 引用的基…

【Golang开源项目】Golang高性能内存缓存库BigCache设计与分析

项目地址 BigCache 是一个快速&#xff0c;支持并发访问&#xff0c;自淘汰的内存型缓存&#xff0c;可以在存储大量元素时依然保持高性能。BigCache将元素保存在堆上却避免了GC的开销。 背景介绍 BigCache的作者在项目里遇到了如下的需求&#xff1a; 支持http协议支持 10…