不断的向数组的中间插入数据,ArrayList和LinkedList哪个快
2013-05-07 17:46
381 查看
大部分人应该回答是LinkedList快一些,实际却不然。
ArrayList 19毫秒
LinkList 129毫秒
分析可能是由于LinkList需要遍历查询中间的位置比较浪费时间,所以慢了一些
import java.util.*; public class Test { public static void main(String[] args) { ArrayList<Integer> List = new ArrayList<Integer>(); long start=System.currentTimeMillis(); for( int i=0;i <10000;i++ ) //给数组增加10个Int元素 List.add(i/2,i); System.out.println(System.currentTimeMillis()-start); //System.out.println(List); LinkedList<Integer> LList = new LinkedList<Integer>(); long startL=System.currentTimeMillis(); for( int i=0;i <10000;i++ ) //给数组增加10个Int元素 LList.add(i/2,i); System.out.println(System.currentTimeMillis()-startL); //System.out.println(LList); } }
ArrayList 19毫秒
LinkList 129毫秒
分析可能是由于LinkList需要遍历查询中间的位置比较浪费时间,所以慢了一些
相关文章推荐
- String[]数组,ArrayList 和 LinkedList的区别
- 数组、ArrayList、LinkedList查询及遍历性能分析 .
- Java使用Arrays、ArrayList、LinkedList、Vector实现插入查询性能分析
- 1>创建一个空的LinkedList通过使用ListIterator,将若干个Integer插入这个List中,插入时总是将他们插入到List的中间.
- ArrayList与linkedlist插入效率分析
- 数据结构之线性表之顺序表和链表(通过数据结构角度深入理解arrayList和linkedList的特性)
- [黑马程序员一]:动态向数组中添加数据之Array,ArrayList,List,Dictionary用法
- C#中数组、ArrayList、List、Dictionary的用法与区别浅析(存取数据)
- LinkedList,ArrayList末尾插入谁效率高?
- ArrayList和LinkedList增删数据对比
- 增加和删除数据时,为什么LinkedList通常比ArrayList快?
- 测试ArrayList与LinkedList追加数据时间长短
- 对象数组,集合,ArrayList,LinkedList,TreeSet,
- Java学习之为什么说LinkedList的插入和删除性能比ArrayList好,而ArrayList的查询更好?
- 对比ArrayList和LinkedList插入速度
- 关于LinkedList和ArrayList 插入元素的性能比较疑惑,知道的请指教......
- 【数据结构与算法】ArrayList和LinkedList
- 增强for循环用法___ArrayList数组实现使用下标最好,LinkedList使用增强型的(转载)
- 关于java列表数据类型(ArrayList, LinkedList)的add与get
- 链表和数组(顺序表)&&LinkedList 和ArrayList