算法通关:014_1:用栈实现队列

server/2024/9/23 3:19:51/

文章目录

  • 题目
  • 总结
  • 代码
  • 运行结果

题目

用栈实现队列 leetcode :232

总结

时间复杂度
平均下来每个方式是O(1)
在这里插入图片描述

代码

java"> class MyQueue {public Stack<Integer> in;public Stack<Integer> out;//初始化public MyQueue() {in = new Stack<>();out = new Stack<>();}//倒数据//从in栈 倒入 out栈//out栈为空才能倒数据//in栈有数据才能倒,且必须全部倒入out栈private void inToOut(){if(out.empty()){while(!in.empty()){//不是空就一直倒out.push(in.pop());//从in里弹出的数据进入out}}}//加入数据public void push(int x){in.push(x);inToOut();//加入一个数据你看能不能倒数据,能就倒,不能就啥也不做}//弹出一个数public int pop(){inToOut();return out.pop();}//不弹出,返回队列头部public int peek(){inToOut();return out.peek();}//判空public boolean empty(){return in.isEmpty() && out.isEmpty();}}

运行结果

在这里插入图片描述


http://www.ppmy.cn/server/96292.html

相关文章

【Linux 从基础到进阶】Linux 内核参数调优

Linux 内核参数调优 引言 内核参数调优是提升 Linux 系统性能和稳定性的重要手段。通过合理配置和优化内核参数,可以显著改善系统资源利用率和响应速度。本文将介绍内核参数的调优方法,并提供适用于 CentOS 和 Ubuntu 系统的具体示例。 1. 内核参数简介 内核参数是控制 L…

Spring为啥用三级缓存而不用两级缓存

1. 背景介绍 Spring框架&#xff1a;一个广泛应用于Java应用开发的轻量级容器框架。三级缓存机制&#xff1a;Spring框架特有的设计&#xff0c;旨在解决单例Bean创建过程中的循环依赖问题。 2. 缓存层级详解 一级缓存&#xff08;Singleton Objects&#xff09; 作用&#x…

通过指令深入了解Linux

文章目录 1.简单介绍XShell1.1下载安装XShell1.2 使用XShell登录主机1.3 XShell下的复制粘贴 2. Linux下的基本指令2.1 ls指令2.1.1 对文件的理解2.1.2 目录下的隐藏文件 2.2 pwd指令2.3 cd指令2.3.1 Linux下目录结构的认识 2.4 touch指令2.5 mkdir指令2.6 clear指令 1.简单介绍…

面试中的算法 [ 持续更新中 ] 基于Python语言 如何判断链表有环

本文主要介绍了如何判断链表有环的问题&#xff0c;并进行了延伸&#xff1a; 如果链表有环如何求出环的长度&#xff0c;入环节点... ...嗯&#xff0c;点个赞总可以不&#xff01;&#xff01;&#xff01; 目录 5.1如何判断链表有环 5.1.1 有一个单向链表&#xff0c;链表…

serial 反序列化靶机

1.安装靶机 2.扫描靶机ip,端口,访问 3.扫描目录,发现有 backup 目录,访问发现是压缩包,下载,解压,查看 通过审计源代码了解到: 首次访问该网站后,会通过 user.class.php 中的创建一个user对象, 内容为wel变量创建welcome对象,同时进行序列化base64编码存入cookie,在此过程中调用…

自学黑客(网络安全)

前言&#xff1a; 想自学网络安全&#xff08;黑客技术&#xff09;首先你得了解什么是网络安全&#xff01;什么是黑客&#xff01; 网络安全可以基于攻击和防御视角来分类&#xff0c;我们经常听到的 “红队”、“渗透测试” 等就是研究攻击技术&#xff0c;而“蓝队”、“…

Visual Studio创建 OpenCV项目

1、cmake 编译 opencv 参考链接&#xff1a;CMake编译OpenCV3.4.1心得_cmake 3.4.1-CSDN博客 1&#xff09;opencv文件名最好不要有空格 2&#xff09;没有下载opencv_contrib&#xff0c;不用配置OPENCV_EXTRA_MODULES_PATH 1、Visual Studio创建 OpenCV项目 参考链接&am…

线程 【Linux】

文章目录 线程页表POSIX线程库pthread_create线程等待pthread_join 线程终止pthread_cancelpthread_self 分离线程 线程ID&&进程地址空间布局 线程 在一个程序里的一个执行路线就叫做线程&#xff08;thread&#xff09;。更准确的定义是&#xff1a;线程是“一个进程…