[쉬운코드] Array List 와 Linked List 의 차이
https://youtu.be/8WSStCUPhmk?si=SkuRoWYqoeAHdBXm
List는 어떤 순서가 있는 데이터의 집합이다.
종류는 Array List, Linked List가 있다.
먼저 Array List부터 살펴보자면,
연속적인 공간에 순차적으로 데이터를 저장하는 자료구조이다.
- 장점 : indexing 가능(개수가 백만개, 몇 억개여도 몇 번째 인덱스 찾기는 똑같은 시간으로 조회 가능하다)
- 단점 : 추가/삭제 오래 걸림
Linked List는 비연속적인 공간에 순서대로 데이터 저장하는 자료구조이다.
장점 : 추가/삭제 쉬움
단점 : 위치 탐색에 오래 걸림
List : 순서가 있는 데이터 저장 자료구조이며
Array List는 연속적 / Linked List는 비연속적이다.
Array List는 사이즈가 고정된다.
예를 들어, 크기가 99인 Array List에서
100 이상을 추가하고 싶을 때는
100 이상의 새로운 큰 Array List를 만들고
기존 Array List를 복사해야 한다.
Linked List는 처음 저장할 때 2가지의 정보를 저장한다.
값 정보와 다음 위치를 가리키는 정보이다.
따라서 초기에 생성할 때, 사이즈를 조금 더 많이 갖는다.
느낀점 : 보통 우리는 Array List를 많이 사용하지만 무조건 사용하는 것이 아니라
Linked List와 비교하여 각각의 장단점을 고려하여 자료구조를 선택해야겠다.