JAVA/자바 개념
[JAVA-API] LinkList / ArrayList 속도비교 /자바 자료구조/예제소스 포함
해병1188기
2021. 4. 8. 14:09
728x90
반응형
2021.03.29 - [JAVA/JAVA(자바)설치 및 툴 이용(ECLIPSE)] - [JAVA] 자바 설치 및 환경 하기 JDK 1.8 버전
[JAVA] 자바 설치 및 환경 하기 JDK 1.8 버전
www.oracle.com/kr/java/technologies/javase/javase-jdk8-downloads.html 위 링크 클릭 하면 여기로 온다 각자의 환경에 맞게 설치 하자 나는 윈도우 64 비트 그전 오라클 로그인 필수 1. 다운로든 된거를 실행..
marine1188.tistory.com
개발 환경
Window 10
JDK 1.8
이클립스 2020_03 버전
리스트 끼리 속도 비교 하기
LinkList / ArrayList 비교
package coection.list;
import java.util.*;
public class ArrayListLinkedListTest {
public static void main(String args[]) {
ArrayList al = new ArrayList(1000000);
LinkedList ll = new LinkedList();
System.out.println("= 순차적으로 추가하기 =");
System.out.println("ArrayList :"+add1(al));
System.out.println("LinkedList :"+add1(ll));
System.out.println();
System.out.println("=중간에 추가하기 =");
System.out.println("ArrayList :"+add2(al));
System.out.println("LinkedList :"+add2(ll));
System.out.println();
System.out.println("= 중간에 삭제하기 =");
System.out.println("ArrayList :"+remove2(al));
System.out.println("LinkedList :"+remove2(ll));
System.out.println();
System.out.println("= 순차적으로 삭제하기=");
System.out.println("ArrayList :"+remove1(al));
System.out.println("LinkedList :"+remove1(ll));
}
public static long add1(List list) {
long start = System.currentTimeMillis();
for(int i=0; i<100000;i++)
list.add(i+"");
long end = System.currentTimeMillis();
return end - start;
}
public static long add2(List list) {
long start = System.currentTimeMillis();
for(int i=0; i<1000;i++)
list.add(500, "X");
long end = System.currentTimeMillis();
return end - start;
}
public static long remove1(List list) {
long start = System.currentTimeMillis();
for(int i=list.size()-1; i > 0;i--)
list.remove(i);
long end = System.currentTimeMillis();
return end - start;
}
public static long remove2(List list) {
long start = System.currentTimeMillis();
for(int i=0; i<1000;i++)
list.remove(i);
long end = System.currentTimeMillis();
return end - start;
}
}
결과 값
= 순차적으로 추가하기 =
ArrayList :61
LinkedList :32
=중간에 추가하기 =
ArrayList :38
LinkedList :8
= 중간에 삭제하기 =
ArrayList :36
LinkedList :2
= 순차적으로 삭제하기=
ArrayList :4
LinkedList :10
728x90
반응형