用LinkedList和ArrayList实现自定义栈的异同
2024-09-26 01:26:28
//ArrayList已连续的空间进行存储数据
//LinkedList已链表的结构存储数据
//栈
MyStark ms=new MyStark();//new 一个实现栈的类
//压栈
ms.push("a");
ms.push("b");
ms.push("c");
ms.push("d");
ms.push("e");
//取出元素
for(int i=0;i<5;i++) {
System.out.println(ms.prop());
}
//一个实现栈的类
public class MyStark {
//使用ArrayList
// ArrayList arr=new ArrayList();
// public void push(Object object) {
// arr.add(0, object);
// }
//
// public Object prop() {
// //取第一个元素
// Object o=arr.get(0);
// arr.remove(0);
// return o;
//
// }
// ArrayList arr=new ArrayList();
// public void push(Object object) {
// arr.add(0, object);
// }
//
// public Object prop() {
// //取第一个元素
// Object o=arr.get(0);
// arr.remove(0);
// return o;
//
// }
//使用LinkedList
LinkedList arr = new LinkedList();
public void push(Object object) {
arr.addFirst(object);
}
public Object prop() {
Object o=arr.getFirst();
arr.removeFirst();
return o;
}
LinkedList arr = new LinkedList();
public void push(Object object) {
arr.addFirst(object);
}
public Object prop() {
Object o=arr.getFirst();
arr.removeFirst();
return o;
}
最新文章
- Linux学习内容
- Java 中多条件排序
- Python中的可迭代对象与迭代器对象
- 3dmax渲染插件,生成2.5d瓦片
- html中拼接字符串问题
- Linux内存性能指标、CPU性能指标
- C++:构造函数和析构函数能否为虚函数
- 【转】1.5 起步 - 初次运行 Git 前的配置
- [Bootstrap] 5. Button and well
- Python即时网络爬虫:API说明
- JSON与String之间互转
- (二)异步方法BeginInvoke和EndInvoke
- Linux显示系统的诊断信息
- 查看 linux 目录大小
- 用asp.net core 把用户访问记录优化到极致
- .NET FileUpLoad上传文件
- GIT 工作区和暂存区
- 解题:APIO 2018 铁人两项
- SpringBoot yml 配置 多配置文件,开发环境,生产环境配置文件分开
- Vue 实例详解与生命周期
热门文章
- 函数的学习1——定义函数&;传递实参——参考Python编程从入门到实践
- ActiveMQ(一)
- dicker第三章--网络管理
- Programming Principles and Practice Using C++ Notes2
- JavaScript函数参数传递
- Springboot项目统一异常处理
- rabbitmq实战:一、天降奇兵
- Redis数据结构和使用场景,redis内存淘汰策略
- 获取项目中所有URL--获取swagger上展示的接口信息
- spring 自定义schema 加载异常 White spaces are required between publicId and systemId.