news 2026/8/21 11:34:37

【java入门到放弃】算法中队列

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【java入门到放弃】算法中队列

1、普通队列

FIFO、全称:First In, First Out、中文意思:先进先出

offer / poll / peek(安全)或add / remove / element(严格(为null会抛异常))

publicstaticvoidmain(String[]args){// 用 LinkedList 实现普通队列Queue<Integer>queue=newArrayDeque<>();// 入队offerqueue.offer(1);queue.offer(2);queue.offer(3);// 查看队首peekSystem.out.println(queue.peek());// 1// 出队pollSystem.out.println(queue.poll());// 1System.out.println(queue.poll());// 2// 再出队System.out.println(queue.poll());// 3System.out.println(queue.poll());// null}

2、双端队列

publicstaticvoidmain(String[]args){Deque<Integer>deque=newArrayDeque<>();// 队尾入队deque.offerLast(1);deque.offerLast(2);// 队首入队deque.offerFirst(0);// 查看队首和队尾System.out.println(deque.peekFirst());// 0System.out.println(deque.peekLast());// 2// 出队System.out.println(deque.pollFirst());// 0System.out.println(deque.pollLast());// 2}

3、栈

LIFO、后进先出

publicstaticvoidmain(String[]args){// 创建一个栈(使用 ArrayDeque)Deque<String>stack=newArrayDeque<>();// 1. push(E e) 压栈stack.push("苹果");stack.push("香蕉");stack.push("橘子");System.out.println("压栈后: "+stack);// [橘子, 香蕉, 苹果]// 2. peek() 查看栈顶元素Stringtop=stack.peek();System.out.println("栈顶元素: "+top);// 橘子System.out.println("查看后栈: "+stack);// 栈内容不变// 3. pop() 弹栈Stringremoved=stack.pop();System.out.println("弹出的元素: "+removed);// 橘子System.out.println("弹栈后栈: "+stack);// [香蕉, 苹果]// 4. isEmpty() 判断栈是否为空System.out.println("栈是否为空? "+stack.isEmpty());// false// 5. size() 栈中元素数量System.out.println("栈中元素数量: "+stack.size());// 2// 再弹一次stack.pop();stack.pop();System.out.println("全部弹出后,栈是否为空? "+stack.isEmpty());// true}
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/21 0:27:28

Kafka GUI工具新标杆:Kafka-King如何彻底改变消息队列管理体验

Kafka GUI工具新标杆&#xff1a;Kafka-King如何彻底改变消息队列管理体验 【免费下载链接】Kafka-King A modern and practical kafka GUI client 项目地址: https://gitcode.com/gh_mirrors/ka/Kafka-King 在当今数据驱动的时代&#xff0c;Kafka作为分布式消息系统的…

作者头像 李华
网站建设 2026/8/21 22:57:45

微生物群落功能预测终极指南:5步实现R语言精准生态角色解析

微生物群落功能预测终极指南&#xff1a;5步实现R语言精准生态角色解析 【免费下载链接】microeco An R package for data analysis in microbial community ecology 项目地址: https://gitcode.com/gh_mirrors/mi/microeco 在微生物生态学研究中&#xff0c;如何从海量…

作者头像 李华
网站建设 2026/8/21 22:15:23

告别微信群救火时代:KoalaQA如何用AI重塑你的售后服务体验

“叮咚”、“叮咚”、“叮咚”——你的手机又响了。打开一看&#xff0c;又是三个不同的售后群在疯狂你。客户A在问产品安装问题&#xff0c;客户B在抱怨功能bug&#xff0c;客户C在催退款进度…你手忙脚乱地切换着聊天窗口&#xff0c;心里默默计算着&#xff1a;这已经是今天…

作者头像 李华
网站建设 2026/8/21 22:58:11

Moonraker 3D打印控制API:从零开始的完整使用指南

Moonraker 3D打印控制API&#xff1a;从零开始的完整使用指南 【免费下载链接】moonraker Web API Server for Klipper 项目地址: https://gitcode.com/gh_mirrors/mo/moonraker Moonraker是一款专为Klipper 3D打印固件设计的API网页服务器&#xff0c;通过简单易用的We…

作者头像 李华
网站建设 2026/8/21 7:35:13

Unpaywall浏览器扩展:轻松获取免费学术论文的智能助手

你是否曾经在深夜赶论文时&#xff0c;发现一篇完美的参考文献却被付费墙阻挡&#xff1f;那种无力感和沮丧&#xff0c;相信每个学术研究者都深有体会。今天&#xff0c;我要为你介绍一款能够彻底改变你学术阅读体验的神奇工具——Unpaywall浏览器扩展。这款工具就像是你的私人…

作者头像 李华
网站建设 2026/8/21 23:37:08

终极指南:如何用智能工具5分钟搞定软件著作权申请

终极指南&#xff1a;如何用智能工具5分钟搞定软件著作权申请 【免费下载链接】ramile China software copyright extraction tool - 中国软件著作权代码自动提取工具 项目地址: https://gitcode.com/gh_mirrors/ra/ramile &#x1f4a1; 版权申请的烦恼&#xff1a;为什…

作者头像 李华