目录

ArrayList和LinkedList的区别?

ArrayList和LinkedList的区别?

首先ArrayList和LinkedList啊,他们都是实现了这个List接口,那我们的ArrayList他们是基于这个索引的一个数据接口,他的底层是数组,那他也可以以这个O(1)的一个时间复杂度,对我们的元素进行一些随机访问,那么LinkedList呢,是以我们这个元素啊,以我们这个元素列表的形式去存储他的这个数据,他的每一个元素和他的起前一个和后一个元素呢,链接在一起,那在这种情况下呢,就是我们去查找某个元素的一个时间复杂度,他是O(n)的,相对我们的ArrayList,那这个LinkedList,他的一个插入删除会比较快很多。ArrayList的查询比较快。LinkedList新增删除比较快呢,原因是当我们这个元素被添加到这个集合的一个任意的一个位置的时候啊,他不需要像数组那样去重新计算我们这个整个大小,或者说更新这个索引,所以LinkedList呢,他相对我们这个ArrayList,他会更占内存,因为LinkedList他等于为了每一个节点的一个存储了两个引用,一个指向前一个元素,一个指向后一个元素啊,大概就是这样。