概述 LinkedList采用底层采用双向链表结构,与ArrayList的数组结构不一样。LinkedList因数据结构不一样,不需要申请连续内存,可以利用碎片内存。元素保存数据内容外还需要存储上下游的引用,形成数据链。LinkedList是非线程安全的。 类图 size变量 与ArrayList的 ...
分类:
其他好文 时间:
2019-12-23 13:01:01
阅读次数:
90
双向链表中不同于单向链表,有两个指针域,一个负责向后连接,一个负责向前连接 相对于单向链表来说:查找更加方便,但添加删除相对复杂 package linkedlist; public class DoubleLinkedListDemo { public static void main(Strin ...
分类:
其他好文 时间:
2019-12-22 12:23:06
阅读次数:
84
①:实现了Serializable接口,表明它支持序列化。②:实现了Cloneable接口,表明它支持克隆,可以调用超类的clone()方法进行浅拷贝。③继承了AbstractSet抽象类,和ArrayList和LinkedList一样,在他们的抽象父类中,都提供了equals()方法和hashCo ...
分类:
编程语言 时间:
2019-12-22 00:14:05
阅读次数:
133
Queue: 基本上,一个队列就是一个先入先出(FIFO)的数据结构 Queue接口与List、Set同一级别,都是继承了Collection接口。LinkedList实现了Deque接口 Deque集成Queue Queue的实现: add 增加一个元索 如果队列已满,则抛出一个IIIegaISl ...
分类:
编程语言 时间:
2019-12-21 22:52:17
阅读次数:
105
1.定义: 添加枚举类元素的专用集合类 2.与其他集合类区别: EnumSet内部实现不使用常见的数据结构,比如数组(ArrayList),链表(LinkedList),哈系表(HashMap、Hashtable、HashSet),红黑树(TreeMap、TreeSet)而是使用位运算完成集合的基本 ...
分类:
编程语言 时间:
2019-12-21 20:55:03
阅读次数:
98
ArrayList和LinkedList都是List接口的实现类。主要区别如下: 最主要的区别是底层的数据结构不同: 1)ArrayList相当于一个动态数组,需要随机访问列表中的元素时,ArrayList的性能更高。 2)ArrayList是JDK1.2时增加的。 3)ArrayList在内存中分 ...
分类:
其他好文 时间:
2019-12-19 23:38:59
阅读次数:
150
《手写集合框架》LinkedList篇 嘿嘿嘿,拖延症犯了,这几天不怎么想写代码,所以趁没事干就写写了。进入正文 一、定义接口 二、编写LinkedList类 1.定义属性 newNode还记得撒,我们上次定义了一个newNode类,整个链表的核心就是它,其他的内容就是方法也都是围绕它改改上下指向, ...
分类:
其他好文 时间:
2019-12-18 23:58:07
阅读次数:
182
Redis的对象和数据结构 一、字符串对象(请参考学习之Redis(一):https://www.cnblogs.com/wbq1994/p/12029516.html) 二、列表对象 列表对象的编码可以是ziplist(压缩列表)或者linkedlist(双端链表),当列表对象包含的元素比较少时会 ...
分类:
其他好文 时间:
2019-12-18 22:12:01
阅读次数:
133
Java基础之 集合体系结构(Collection、List、ArrayList、LinkedList、Vector)
集合是JavaSE的重要组成部分,其与数据结构的知识密切相联,集合体系就是对数据结构的封装 ...
分类:
编程语言 时间:
2019-12-18 14:58:43
阅读次数:
72
Stack简介 Stack是栈。它的特性是:先进后出(FILO, First In Last Out)。 java工具包中的Stack是继承于Vector(矢量队列)的,由于Vector是通过数组实现的,这就意味着,Stack也是通过数组实现的,而非链表。当然,我们也可以将LinkedList当作栈 ...
分类:
编程语言 时间:
2019-12-17 22:25:24
阅读次数:
107