黑马程序员技术交流社区

标题: ArrayList 和 LinkList的区别 [打印本页]

作者: 王晓杰    时间: 2015-1-4 17:48
标题: ArrayList 和 LinkList的区别
ArrayList 和 LinkList的区别

作者: wdz759886267    时间: 2015-1-4 18:40
我也想知道
作者: dream_style    时间: 2015-1-4 22:10
还没学到那里
作者: NASUF    时间: 2015-1-10 22:47
ArrayList底层是用数组实现的,所以插入删除麻烦;而LinkedList底层是链表,存储的对象在内存中不是连续的,而是由索引连接,所以插入删除比较容易,直接操作索引就可以
作者: Jason996    时间: 2015-1-10 22:56
最大的区别就是,数据结构不同。
作者: wocan23    时间: 2015-1-10 23:15
四楼说的很对
作者: hmyf150122    时间: 2015-1-10 23:21
ArrayList;底层的数据结构使用的是数组,特点:查询速度很快,增删很慢                 LinkedList;底层的数据结构使用的是链表,特点:增删速度很快,查询速度很慢
作者: 温晓慧    时间: 2015-1-14 21:56
再补充一个,就是linkedList里有很多特有的方法,比如removeFirst,removeLast,getFirst,getLast等,在增删数据的时候都非常好用。
作者: Joseph_liuxh    时间: 2015-1-15 15:41
ArrayList
底层是数组
优点:查询快。原因:有索引。

LinkedList
底层是链表
优点:删除,插入快。原因:每一个元素能够记住其前面的元素和后面的元素。

查询时间复杂度(共n个元素,查询第i个元素)
ArrayList:O(1)
LinkedList:O(i)

插入或删除复杂度(共n个元素,查询第i个元素)
ArrayList(n-i)
LinkedList(1)




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2