Stack类、Queue类和Deque类常用方法(防止忘记)

news/2024/10/31 3:19:02/

Stack类

栈(Stack)是一种后进先出(LIFO)的数据结构,操作栈的元素的方法有:

把元素压栈:push(E)
把栈顶的元素“弹出”:pop(E)
取栈顶元素但不弹出:peek(E)
在Java中,我们用Deque可以实现Stack的功能

最后,不要使用遗留类Stack

Queue类

在Java的标准库中,队列接口Queue定义了以下几个方法:

int size():获取队列长度;
boolean add(E) / boolean offer(E):添加元素到队尾;
E remove() / E poll():获取队首元素并从队列中删除;
E element() / E peek():获取队首元素但并不从队列中删除。

Deque类

Deque实现了一个双端队列(Double Ended Queue),它可以:

将元素添加到队尾或队首:addLast() / offerLast() / addFirst() / offerFirst()
从队首/队尾获取元素并删除:removeFirst() / pollFirst() / removeLast() / pollLast()
从队首/队尾获取元素但不删除:getFirst() / peekFirst() / getLast() / peekLast()
总是调用xxxFirst() / xxxLast()以便与Queue的方法区分开
避免把null添加到队列

实例化

queue是interface,一般用其实现类LinkedList实例化

Queue<Integer> queue=new LinkedList<>();
Deque<Integer> deque=new LinkedList<>();

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

相关文章

联想工作站 装linux系统安装,分区、代码 - 在ThinkPad上安装Ubuntu的全过程详解_Linux教程_Linux公社-Linux系统门户网站...

分区 由于Thinkpad出厂时已经占用了一个隐藏分区来做HPA&#xff0c;而一个硬盘上最多能有四个主分区&#xff0c;其中扩展分区还占去了一个份额&#xff0c;因此分区方案的选择受到一点限制。我的分区方式如下&#xff1a; 代码: Device Filesystem Size Used Avail Use% Moun…

No binary rubies available for: osx/10.8/x86_64/ruby-1.9.2-p320解决

you need to run: rvm get head rvm autolibs enable rvm use --install 1.9.2 bundle install

磁盘调度策略 c语言实现(操作系统课程设计,书p320)

#include<stdio.h> #include<stdlib.h> #define maxsize 1000 //先进先出调度算法 void FIFO(int array[],int m) { int sum0,j,i,now; float avg; printf("\n 请输入当前的磁道号&#xff1a;"); scanf("%d",&now); printf("\n…

C++动态分配new(C++ primer,P320)

主要包含一下几部分内容 后续可能会再补充 new分配内存块的来源new时初始化new失败时new运算符、函数、替换函数定位new运算符定位new的重载 new分配内存块的来源 C primer plus书中P321页说&#xff0c;new负责在堆&#xff08;heap&#xff09;中找到一个足以能够满足要求…

【23考研】计算机408数据结构代码题强化阶段划重点(王道书)

视频链接:【23考研】10分钟带你整理408数据结构强化阶段代码题复习重点 本篇只适合考408的同学&#xff0c;请自主命题的同学自觉右上角掉 因为王道书为了照顾自主命题的同学&#xff0c;所以很多算法也给出了代码实现&#xff0c;实际上对于考408的同学&#xff0c;很多代码是…

【Python爬虫】采集电商商品评价信息

目录 一、数据采集逻辑二、数据Schema三、数据爬取1.导入库2.对爬虫程序进行伪装3.抓取商品评论信息4.防止反爬&#xff0c;每爬取一页数据后&#xff0c;设置程序休眠环节 四、数据存储1. 存储到csv 2.存储到数据库 一、数据采集逻辑 在进行数据采集之前&#xff0c;明确哪些…

绝不可错过!R语言与ggplot2实现SCI论文数据分析神器

一、介绍 1.1 R语言和ggplot2 语言是一种强大的数据分析和统计建模工具&#xff0c;具有广泛的应用领域。 ggplot2是基于R语言的数据可视化工具&#xff0c;具有强大的绘图功能和灵活性。 1.2 数据分析中的重要性 R语言和ggplot2在数据分析中具有广泛的应用&#xff0c;能够帮助…

DOS的一个小工具 LOIC

分享DOS的一个小工具 LOIC LOIC 这个工具还是挺出名的DOS工具 DoS概述 DoS(Denial of Service&#xff0c;拒绝服务)攻击是指攻击者利用系统及协议漏洞大量消耗网络带宽以及系统CPU、内存等资源&#xff0c;使得其他合法用户不能及时得到服务器的响应,DoS攻击即“一对一”的攻…