Linked List
Linked List 값 추가하기/삭제하기
LinkedList<String> ll = new LinkedList<String>();
ll.addFirst("A");
ll.addFirst("B");
ll.addFirst("C");
ll.addFirst("D");
System.out.println(ll);//[D, C, B, A]
ll.removeLast();
System.out.println(ll);//[D, C, B]
ArrayList와 LinkedList 속도 비교
구분 | 순차적 추가/삭제 | 중간 추가/삭제 | 검색 |
ArrayList | 빠름 | 느림 | 빠름 |
LinkedList | 느림 | 빠름 | 느림 |
EX01. ArrayList와 LinkedList 중간 추가/삭제 속도비교
List<String> test1 = new ArrayList<String>();
List<String> test2 = new LinkedList<String>();
long startTime;
long endTime;
startTime = System.nanoTime();
for (int i = 0; i < 10000; i++) {
test1.add(0, String.valueOf(i));
}
endTime = System.nanoTime();
System.out.println("ArrayList걸린 시간 : " + (endTime - startTime)); //ArrayList걸린 시간 : 24794700
startTime = System.nanoTime();
for (int i = 0; i < 10000; i++) {
test2.add(0, String.valueOf(i));
}
endTime = System.nanoTime();
System.out.println("LinkedList걸린 시간 : " + (endTime - startTime)); //LinkedList걸린 시간 : 8163900
출력결과:
ArrayList걸린 시간 : 24794700
LinkedList걸린 시간 : 8163900
→ 중간 추가/삭제 속도는 ArrayList가 LinkedList보다 느린 것을 확인할 수 있다.
'BackEnd > Java' 카테고리의 다른 글
[Java] Hash set (0) | 2021.07.19 |
---|---|
[Java] VirtualBox 설치 (0) | 2021.07.19 |
[Java] ArrayList (0) | 2021.07.15 |
[Java] 제네릭 Generic (0) | 2021.07.14 |
[Java] 컬렉션 Collection (0) | 2021.07.14 |
댓글