Java学习 - LinkedList类

Java LinkedList 用法

​ LinkedList类是双向链表,每个节点都保留了前驱和后继节点的引用。

​ LinkedList和ArrayList都继承自List接口,二者的实现不同。ArrayList依靠数组实现,优势在于O(1)查询,但在增加、删除元素上效率很低。LinkedList依靠链表实现,优势在于O(1)增减,但查询效率很低。

要使用LinkedList,应该导入包

import java.util.LinkedList;

创建LinkedList

LinkedList<Integer> linkedlist = new LinkedList<Integer>();
LinkedList test = new LinkedList();

增加、删除元素

增加元素

for(int i = 0; i < 10; i++) {
    linkedlist.add(i); // 向末尾增加元素
}

linkedlist.add(2,5); // 在索引2后增加元素5
// java的链表支持按照索引访问,但是这个访问仍然是O(n)的复杂度

删除元素

linkedlist.remove(new Integer(3));
linkedlist.remove(0);

常用方法

linkedlist.addFirst(...); // 等效于 add(0,...);
linkedlist.addLast(...);  // 等效于 add(...);
linkedlist.clear(); // 清空链表,物理长度为0
linkedlist.size(); // 返回链表逻辑长度
linkedlist.isEmpty();// 判断逻辑长度是否为0
posted @ 2020-10-20 11:22  popozyl  阅读(127)  评论(0编辑  收藏  举报