LinkedList
Posted darknessplus
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LinkedList相关的知识,希望对你有一定的参考价值。
数据结构
双向链表
节点类型:
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;
}
}
成员变量
// list中的元素个数
transient int size = 0;
// 链表的头节点
transient Node<E> first;
// 链表的尾节点
transient Node<E> last;
重要方法
add(E e)
添加到链表尾,注意空链表
remove(Object o)
o==null时要把Node.item==null都删除,删除Node要注意前后节点的链接,考虑前后节点在头尾
以上是关于LinkedList的主要内容,如果未能解决你的问题,请参考以下文章
Java中arraylist和linkedlist源代码分析与性能比較
优雅代码13-linkedList插入真的比arrayList快么