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

堆栈和队列模拟

Main.java

public class Main {public static void main(String[] args) {System.out.println("===== 测试堆栈(Stack)功能 =====");TestQueue.test();System.out.println("\n===== 测试队列(Queue)功能 =====");TestStack.test();}
}

LinkedList.java

public class LinkedList {}

 Queue.java

import java.util.LinkedList;/** 	队列(双端队列):* 	offer()* 	poll()* **/
class Queue{LinkedList list;public Queue(){list = new LinkedList();}public void add(Object o){list.offer(o);}public void remove(){list.poll();}public int size(){return list.size();}
}

 Stack.java

import java.util.LinkedList;/** 栈:主要是用于堆栈数据结构的存储方式。* 		先进后出* 		push()* 		pop()* */class Stack{LinkedList list;public Stack() {list = new LinkedList();}// 进栈public void push(Object o) {list.push(o);}public void pop() {list.pop();}// 获取元素个数public int size() {return list.size();}
}

TestQueue.java

 class TestQueue {public static void test() {Queue queue = new Queue();// 添加元素queue.add(10);queue.add(20);queue.add(30);System.out.println("当前队列大小: " + queue.size());// 移除元素System.out.println("移除元素: ");while(queue.size() > 0) {queue.remove(); }System.out.println("移除后队列大小: " + queue.size());}
}

 TestStack.java

class TestStack {public static void test() {Stack stack = new Stack();// 压入元素stack.push("第一");stack.push("第二");stack.push("第三");System.out.println("当前栈大小: " + stack.size());// 弹出元素System.out.println("弹出元素: ");while(stack.size() > 0) {stack.pop(); }System.out.println("弹出后栈大小: " + stack.size());}
}

结果

http://www.dtcms.com/a/164395.html

相关文章:

  • foc控制 - clarke变换和park变换
  • [TxRxResult] There is no status packet! 及 Incorrect status packet! 问题修复
  • Nacos源码—2.Nacos服务注册发现分析四
  • Openharmony4.1 Release——软总线部分错误码表
  • 数据库概论速成期中版
  • MySQL 中的最左前缀法则
  • ISO和 IEC机构的区别
  • 信雅达 AI + 悦数 Graph RAG | 大模型知识管理平台在金融行业的实践
  • Microsoft .NET Framework 3.5 离线安装包 下载
  • 【动手学大模型开发】使用 LLM API:智谱 GLM
  • Python中的defaultdict方法
  • 信息过载(Information Overload):太多的信息导致了信息处理能力的饱和
  • JVM | CMS垃圾收集器详解
  • 基于tabula对pdf中的excel进行识别并转换成word(三)
  • FlexNoC-Latency
  • 进程自动守护,监控并自动重启
  • 完整的 SSL 证书生成与 Spring Boot 配置流程
  • MySQL下载与安装
  • 无人设备遥控器之移动手持定位系统篇
  • qtfaststart使用教程(moov置前)
  • MLOps全链路能力:模型监控、版本回滚与持续训练
  • 2025年- H13-Lc120-189.轮转数组(普通数组)---java版
  • MinIO中mc工具的安装、配置、简单使用
  • AI驱动软件工程:SoftEngine 方法论与 Lynx 平台实践分析
  • AI防摔倒检测系统
  • 华帝股份携手体验家,构建厨电终端服务体验管理闭环
  • HRScene:首个覆盖多场景高分辨率图像理解的综合性基准数据集
  • (01)Redis 的订阅发布Pub/Sub
  • 2025年高级Java后端面试题:最新技术体系深度解析
  • Promtail+Loki+Grafana监控日志