[关闭]
@XQF 2017-02-17T11:09:34.000000Z 字数 370 阅读 1076

ArrayList与LinkedList

java


参考博文

1.简述基本区别

  1. ArrayList是基于动态数组的数据结构,LinkedList是基于双向链表的数据结构
  2. 对于随机的get和set,这个ArrayList是优于LinkedList的,因为要移动指针
  3. 对于add和remove,LinkedList占优势,ArrayList要移动数据

起始也就是连续存储和链表的区别
** ArrayList内部是使用可増长数组实现的,所以是用get和set方法是花费常数时间的,但是如果插入元素和删除元素,除非插入和删除的位置都在表末尾,否则代码开销会很大,因为里面需要数组的移动。
LinkedList是使用双链表实现的,所以get会非常消耗资源,除非位置离头部很近。但是插入和删除元素花费常数时间。**

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注