linkedlist
来源:互联网 发布:深圳返享网络 编辑:程序博客网 时间:2024/06/11 00:21
import java.util.LinkedList;/* 2017-02-18 09:57:08 *linkedlist 是list接口的实现类 是一个list 集合 可以根据索引随机访问集合中的元素 *还实现了deque 接口 可以使用双端队列方法 既可以是栈 也可以是队列 *内部实现是使用了链表的形式来保存集合中的元素 *随机访问元素的性能较差 插入删除 性能较好 内部只需要改变 指针的地址即可 *vector 也是以数组的形式来存储集合元素 ,实现了线程同步,性能更加不好 * * *分析 **** * 都是线性表的两种典型实现 * arraylist 基于数组的线性表 * linkedlist 基于链表的线性表 不仅有list 的功能 还实现了deque 的 具有 双端队列、栈的功能 * * queue 队列 * deque 双端队列 既可以是队列也可是作为栈 * * 数组是以一块连续的内存区来保存所有的元素 随机访问的性能较好 内部以数组作为底层的实现的集合 在随机访问的性能都较好 * 内部以链表实现的 插入删除 性能较好 * 总体来说 arraylist性能比linkedlist 性能较好 * 大部分时候都应该是使用arraylist * * * * list 集合建议 * 遍历list 集合元素 arraylist vector集合 应该使用 随机访问 方法 get 来遍历 性能更好 * 遍历linkedlist 是用迭代器 iterator 来遍历集合 * * 经常 插入 删除 操作大量数据的list集合的大小 可以使用linkedlist *arraylist、vector 集合可能需要经常重新分配内存数组的大小 效果不好 * *多线程需要同时访问list集合的元素时,应该考虑使用collections 集合包装成线性安全的集合 * * */public class Linkedlistj {public static void main(String[] args) {LinkedList linkedList = new LinkedList();linkedList.add("a"); //list 方法linkedList.offer("b"); // deque方法for (int i = 0; i < linkedList.size(); i++) {//Object object = linkedList.get(i);//System.out.println(object);System.out.println(linkedList.get(i)); // list 遍历}System.out.println(linkedList.peekLast());}}
0 0
- LinkedList
- LinkedList
- LinkedList
- LinkedList
- LinkedList
- LinkedList
- LinkedList
- LinkedList
- LinkedList
- LinkedList
- LinkedList
- LinkedList
- LinkedList
- LinkedList
- LinkedList
- LinkedList
- LinkedList
- LinkedList
- Codeforces Round #398 (Div. 2) A Snacktower
- jstee--基础用法
- MATLAB实现最大类间方差算法
- Java的native关键字
- Jedis的使用
- linkedlist
- Python学习--21 电子邮件
- linux bash脚本监控启动停止weblogic服务
- 数据库索引的实现原理(面试问题:请说出数据库索引实现原理)
- S2SH整合SpringMvc报错FlushMode.MANUAL( 只读模式)
- java 读取excel 文件 Unable to recognize OLE stream 错误
- podspec文件的写法详解
- MySQL协议.NET Core实现(一)
- 视觉SLAM整理(2)数学篇