首页 > 编程语言 >java中的栈和队列

java中的栈和队列

时间:2024-04-07 19:14:27浏览次数:24  
标签:返回 java 删除 队列 元素 报错

java中的栈和队列

特点:先进后出

插入和删除只能在一段进行(栈顶),另一端称为(栈底)

插入和删除的时候时间复杂度都是最理想的O(1)

java中提供了一个类:Stack,并且实现了泛型

方法:

  1. empty()检测栈是否为空
  2. peek()查看头部元素,不删除
  3. pop()删除头部元素,并返回删除的元素
  4. push()将该元素压入到栈顶
  5. search()返回对象在栈中的位置,以1为基数

队列

特点:先进先出

front(队头)允许删除的一端,随数据出队的变化而变化

rear(队尾)允许插入的一段,随数据入队的变化而变化

LinkedList类实现了Queue接口,因此我们可以LinkedList当做Queue来用

方法:

  1. 添加:
    • offer() 如果队列满了不会报错,会返回false
    • add() 如果队列满了会抛出unchecked异常
  2. 删除:
    • poll() 在空集合调用的时候不会报错,只会返回null
    • remove() 会报错
  3. 查询头部元素:
    • peek()在没有元素的时候,不会报错,只会返回null
    • element()集合为空时会报错异常

标签:返回,java,删除,队列,元素,报错
From: https://www.cnblogs.com/ning23/p/18119699

相关文章

  • Java登陆第四十天——Router路由守卫
    路由守卫就是在切换页面的期间,执行的函数。 类似于Vue的钩子函数 类似于Setvlet的Filter(过滤器)路由守卫路由守卫,就是在路由切换期间执的函数。由vue-router提供的两个常见守卫(函数):全局前置守卫beforeEach和全局后置守卫afterEach语法格式如下:/*全局前置守卫beforeEa......
  • Java集合常用类及使用特点
    Java集合框架提供了一组接口和类,用于存储和操作对象集合。它包括常用的数据结构,如列表、集合、映射等,以及对应的实现类。主要接口和类:List(列表):允许重复元素,按照插入顺序存储。常用实现类有ArrayList(查询快、增删慢)和LinkedList(增删快、查询慢)。ArrayListvs.LinkedList:Ar......
  • 自制小钢琴(Java)
    简易版小钢琴packagePianoGame;importjavax.swing.*;importjava.awt.*;publicclassPianoGameextendsJFrame{Buttonbutton=null;//定义两个参数,分别为宽,高publicstaticfinalintWIDTH=700;publicstaticfinalintHEIGHT=450;......
  • Java的异常机制
    异常机制三种类型检查型异常:程序员无法预见的运行时异常:在编译时会被忽略错误ERROR:错误在代码中被忽略,在编译时检查不到异常处理机制抛出异常捕获异常异常处理的五个关键字:try,catch,finally,throw,throws以下为这五个关键词的使用方法:packageexception;publicclassD......
  • Java商城免费搭建 VR全景商城 saas商城 b2b2c商城 o2o商城 积分商城 秒杀商城 拼团商
     1.涉及平台平台管理、商家端(PC端、手机端)、买家平台(H5/公众号、小程序、APP端(IOS/Android)、微服务平台(业务服务) 2.核心架构SpringCloud、SpringBoot、Mybatis、Redis3.前端框架VUE、Uniapp、Bootstrap/H5/CSS3、IOS、Android、小程序4.核心思想分布式、微服务......
  • java 企业工程管理系统软件源码+Spring Cloud + Spring Boot +二次开发+ MybatisPlus
    鸿鹄工程项目管理系统SpringCloud+SpringBoot+Mybatis+Vue+ElementUI+前后端分离构建工程项目管理系统项目背景一、随着公司的快速发展,企业人员和经营规模不断壮大。为了提高工程管理效率、减轻劳动强度、提高信息处理速度和准确性,公司对内部工程管理的提升提出了更高的要......
  • java 企业工程管理系统软件源码+Spring Cloud + Spring Boot +二次开发+ MybatisPlus
     鸿鹄工程项目管理系统SpringCloud+SpringBoot+Mybatis+Vue+ElementUI+前后端分离构建工程项目管理系统项目背景一、随着公司的快速发展,企业人员和经营规模不断壮大。为了提高工程管理效率、减轻劳动强度、提高信息处理速度和准确性,公司对内部工程管理的提升提出了更高的......
  • java中LocalDate和Date的应用
     LocalDate和Date的区别:Java中Date与LocalDate、LocalDateTime之间的区别及相互转换_localdate和date区别-CSDN博客​​​​​​​应用:获取n天前的时间数组/***根据time获取time天内时间list**@paramtime时间跨度14-半个月返回15条*......
  • 如何在JavaScript中解析S表达式
    S表达式是Lisp编程语言家族的基础。在本文中,我将逐步向您展示如何创建一个简单的S表达式解析器。这可以作为Lisp解析器的基础。Lisp是实现最简单的语言之一,创建解析器是第一步。我们可以使用解析器生成器来完成这项任务,但自己编写解析器会更容易。我们将使用JavaScript。(本文内......
  • javascript 原生JS实现 fadeIn / fadeOut 方法
    js源码:Object.prototype.fadeIn=function(time,callback){varel=this;el.style.opacity=0;varst=setInterval(function(){el.style.opacity=parseFloat(el.style.opacity)+0.01;if(el.style.opacity>=1){clearInterval(st);if(callback!==......