私は LinkedList と ArrayList を扱っていて、要素を ArrayList と LinkedList に追加する概念を知っていますが、挿入時間をチェックするコードを実行すると、LinkedList と ArrayList の両方で挿入時間が何度も異なります。
LinkedList の挿入時間が改善される場合もあれば、その逆の場合もあります。正確にどのように行われているのか、誰か教えてください。
import java.util.ArrayList;
public class Time
{
public static void main(String args[])
{
int n=100000;
long milis = System.currentTimeMillis();
ArrayList obj=new ArrayList();
for(int k=0;k<=n;k++)
{
obj.add(k);
}
System.out.println("insert arraylist takes "
+(System.currentTimeMillis()-milis)+" ms");
}
}
このプログラムの出力は
1) arraylist の挿入には 13 ミリ秒かかります 2) arraylist の挿入には 9 ミリ秒かかります
2番目のコードは
import java.util.LinkedList;
public class Time1
{
public static void main(String args[])
{
int n=100000;
long milis = System.currentTimeMillis();
LinkedList obj=new LinkedList();
for(int k=0;k<=n;k++)
{
obj.add(k);
}
System.out.println("insert linklist takes "
+(System.currentTimeMillis()-milis)+" ms");
}
}
これの出力
1) リンクリストの挿入には 8 ミリ秒かかります
2) リンクリストの挿入には 17 ミリ秒かかります