概述
LinkedList是JavaAPI中的一种动态数组,其底层采用链表,插入删除快,访问慢。
以下是其继承结构:
节点的构型
/**
* 链表中的节点
* @param <E>
*/
private static class Node<E> {
E item;
Node<E> next;
Node<E> prev;
Node(Node<E> prev, E element, Node<E> next) {
this.item = element;
this.next = next;
this.prev = prev;
}
}
从代码中可以非常清晰的看出来,LinkedList底层是双向链表。
每个节点不仅存储当前值,也存储上一个、下一个节点的指向。