当前位置: 首页 > 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]

相关文章:

  • 通义灵码2.5——基于MCP打造我的12306火车票智能查询小助手
  • 人工智能在智能城市中的创新应用与未来趋势
  • 67常用控件_QTreeWidget的使用
  • 2024 吉林 CCPC
  • 表中如何插入数据!扩展技能边界
  • 9.5 Q1 | 北京协和医学院GBD发文 | 1990-2021 年全球、区域和国家心力衰竭负担及其根本原因
  • 外地车在北京进京证用完后该如何行驶
  • PostgreSQL查询一个表的数据
  • 【面板数据】各地区新型数字基础设施数据集(2002-2025年)
  • GPU 图形计算综述 (二):固定管线
  • 攻防世界-BadProgrammer
  • Spring AI MCP的几个小问题
  • Python训练营打卡 Day39
  • 【博客系统】博客系统第十一弹:从零开始在 Linux 系统上搭建 Java 部署环境并部署 Web 项目
  • while循环
  • java上机测试错题回顾(4)
  • MC0309魔法项链
  • 从微积分到集合论(1630-1910)(历史简介)——第3章——数学分析的出现及其基础性进展(1780-1880)(I.Grattan-Guinness)
  • 65常用控件_QListWidget的使用
  • C++ 判断文件的编码类型
  • 公司网站建设费用计入什么科目/东莞寮步最新通知
  • 网站模板文件扫描/郑州网站seo推广
  • 免费的app软件下载网站/搜索引擎推广的常见形式有
  • 网站打开太慢/百度app手机版
  • 广告公司名字测试打分/seo培训班 有用吗
  • 两学一做11月答题网站/网络视频营销的案例