news 2026/5/19 15:20:28

【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/5/16 16:54:11

大模型基石:神经网络工作原理完全指南,小白也能看懂

本文系统介绍了人工智能领域的基础概念&#xff0c;重点解释了神经网络如何通过将实际问题转化为数学问题来学习。详细阐述了神经网络作为复杂函数的表示方法、参数学习中的最优化问题、梯度下降和反向传播的工作原理&#xff0c;以及不同类型的损失函数。通过天气预测等实例&a…

作者头像 李华
网站建设 2026/5/17 1:50:31

Windows ISO自动化补丁集成工具终极指南

Windows ISO自动化补丁集成工具终极指南 【免费下载链接】Win_ISO_Patching_Scripts Win_ISO_Patching_Scripts 项目地址: https://gitcode.com/gh_mirrors/wi/Win_ISO_Patching_Scripts 还在为每次安装Windows系统后手动下载安装大量补丁而烦恼吗&#xff1f;&#x1f…

作者头像 李华
网站建设 2026/5/14 22:22:36

终极解密:动态网格布局的智能避障算法

当组件在有限空间内碰撞时&#xff0c;谁该让路&#xff1f;这个看似简单的布局谜题&#xff0c;背后隐藏着一套精妙的动态网格布局算法。今天&#xff0c;让我们化身技术侦探&#xff0c;深入探索GridStack引擎如何通过三步解决组件碰撞难题&#xff0c;实现智能空间分配。 【…

作者头像 李华
网站建设 2026/5/3 5:53:52

Vial-QMK键盘固件:从入门到精通的完整实战指南

Vial-QMK键盘固件&#xff1a;从入门到精通的完整实战指南 【免费下载链接】vial-qmk QMK fork with Vial-specific features. 项目地址: https://gitcode.com/gh_mirrors/vi/vial-qmk 想要彻底释放键盘的潜力吗&#xff1f;Vial-QMK键盘固件为你打开了一扇通往无限定制…

作者头像 李华
网站建设 2026/5/11 3:38:41

期末复习02(分析题+改错题)

文章目录程序分析项目结构分析题1分析题2分析题3分析题4二、程序改错题项目结构改错题01改错题02改错题03改错题04改错题05改错题06程序分析 项目结构 分析题1 package ProgramAnalysis;public class T1 {public static void main(String[] args) {int[][] arr {{10, 20, 3…

作者头像 李华