线性表之何时使用ArrayListLinkedList?

Posted 蚂蚁分享圈

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了线性表之何时使用ArrayListLinkedList?相关的知识,希望对你有一定的参考价值。

前言

  线性表不仅可以存储重复的元素,而且可以指定元素存储的位置并根据下表访问元素。

  List接口的两个具体实现:数组线性表类ArrayList、链表类LinkedList

ArrayList

  ArrayList使用数组存储元素,这个数组是动态创建的。如果元素个数超过了数组的容量,就会创建一个更大的数组,并将当前数组中的所有元素都复制到新数组中。另外需要注意的是,ArrayList容量可能根据元素的增加而自动增大,但是不能自动减少。可以使用trimToSize()将数组容量减少到线性表大小。

LinkedList

  即是使用一个链表来进行存储元素。因此可以提供从线性表的两端插入和删除元素的方法。

 

1. 若要提取元素或在线性表的尾部插入或删除元素,不能再其他位置插入或者删除元素,那么ArrayList效率较高。

2. 但是如若需要在线性表的任意位置插入或者删除元素,LinkedList则为最佳。

3. 如果不需要在线性表中插入删除元素,只是访问元素的话,数组则是效率最高的数据结构。

以上是关于线性表之何时使用ArrayListLinkedList?的主要内容,如果未能解决你的问题,请参考以下文章

数据结构(线性表之单链表)

数据结构线性表之实现单循环链表

线性链表之顺序表

数据结构学习总结线性表之顺序表

线性链表之顺序表

线性表之顺序存储结构(顺序表)