LinkedList 源码学习

整体结构

LinkedList 底层数据结构是一个双向链表

链表每个节点我们叫做 Node,Node 有 prev 属性,代表前一个节点的位置,next 属性,代表后一个节点的位置;
first 是双向链表的头节点,它的前一个节点是 null。
last 是双向链表的尾节点,它的后一个节点是 null;
当链表中没有数据时,first 和 last 是同一个节点,前后指向都是 null;
因为是个双向链表,只要机器内存足够强大,是没有大小限制的。

追加元素

分为头部追加,与尾部追加

这些在数据结构与算法中都学习过

优缺点

删除增加元素快

查询元素慢,通行导致的,再优化也莫得办法

LinkedList 适用于要求有顺序、并且会按照顺序进行迭代的场景,主要是依赖于底层的链表结构

原文地址:https://www.cnblogs.com/AmosAlbert/p/12832182.html