当前位置: 首页 > news >正文

java队列

Java
在 Java 中,队列通过 Queue 接口实现,常用实现类包括 LinkedList、ArrayDeque 等,使用时需导入 java.util.Queue 和对应的实现类(如 java.util.LinkedList)。 若需要双端队列操作,可使用 Deque 接口(如 ArrayDeque)。

Java 的队列提供以下常用方法:

元素访问
q.peek():返回队首元素,队列为空时返回 null。
q.element():返回队首元素,队列为空时抛出异常。
(仅 Deque)q.getLast():返回队尾元素。
修改
q.add(e) / q.offer(e):在队尾插入元素。add 在容量受限队列中可能抛异常,offer 返回 boolean 表示是否成功。
q.remove() / q.poll():移除并返回队首元素。remove 在队列为空时抛异常,poll 返回 null。
(仅 Deque)q.addLast(e) / q.addFirst(e):在队尾或队头插入元素。
容量
q.isEmpty():判断队列是否为空。
q.size():返回队列中元素的数量。

Java(库方法)
PriorityQueue 是一个自动排序的队列,底层采用堆数据结构,默认是小根堆(即优先取出最小元素)。

基本操作

PriorityQueue pq = new PriorityQueue<>(); // 创建空的优先队列
pq.add(x); pq.offer(x); // 向优先队列添加元素x
pq.remove(); // 移除优先队列中的最小元素
pq.peek(); // 获取优先队列中的最小元素
pq.size(); // 获取优先队列的大小
copy
例子:

PriorityQueue pq = new PriorityQueue<>();
pq.add(3); // pq = [3]
pq.add(1); // pq = [1, 3]
pq.add(4); // pq = [1, 3, 4]
System.out.println(pq.peek()); // 输出: 1
pq.remove(); // pq = [3, 4]

http://www.xdnf.cn/news/722161.html

相关文章:

  • EMQX将社区版和企业版统一到一个强大的 EMQX 平台
  • 文件操作管理
  • 从 0 到 1 的显示革命:九天画芯张锦解码铁电液晶技术进化史
  • 力扣HOT100之动态规划:70. 爬楼梯
  • Windows 下如何打开设置环境变量的对话框
  • 男子垒球世界纪录是多少米·棒球1号位
  • 26考研 | 王道 | 第六章 应用层
  • 解析C++排序算法
  • linux服务器ssh远程中文显示问号
  • VL 中间语言核心技术架构:构建全链路开发生态
  • 【仿生系统】潜移默化 —— Claude4 的解决方案
  • java上机测试错题回顾(4)
  • JAVA与C语言之间的差异(一)
  • 王树森推荐系统公开课 特征交叉01:Factorized Machine (FM) 因式分解机
  • vue自定义穿梭框(内容体+多选框)
  • SMT贴片工艺核心要点解析
  • 连接远程桌面计算机提示:“这可能是由于CredSSP加密数据库修正” 问题解决方案
  • OpenLayers 地图打印
  • C++创建对象过程
  • 攻防世界-BadProgrammer
  • siglip2(2) Naflex模型的动态分辨率原理
  • 微信小店推客系统带来的便利性
  • IPTV电视直播 1.6.0 | 手机电视直播 秒播无卡顿
  • 短视频一键搬运 v1.7.1|短视频无水印下载 一键去重
  • 计算几何 视频截图
  • int和Integer的区别
  • vue3+element plus 关于el-dialog__body无法选中的问题
  • 掌握STP技术:网络环路终结者实战
  • cf2067A
  • 定位例子(vue3)