배열([]) 과 ArrayList

최민수·2023년 7월 25일
0

프로그래밍 언어

목록 보기
11/14

배열 [], ArrayList

배열의 가장 큰 장점 "접근 속도가 빠르다"는 것.

하지만 치명적인 단점은 "크기 변경이 불가능"하고 "데이터 추가/삭제에 많은 비용"이 든다.

따라서 배열의 장점은 가져가고 단점은 보완하는 ArrayList 를 많이 사용한다.


LinkedList

LinkedList 는 각 element를 Node로 정의하고 각 Node는 다음 Node를 가리키는 참조값과 데이터로 구성되어 있는 자료구조다.

따라서 데이터 추가/삭제 상황에서 다음 노드를 가리키는 참조값과 데이터만 바꾸어 연결해주면 되므로 비순차적 데이터 추가/삭제/수정에 매우 유리한 성능을 보인다.


ArrayList vs LinkedList

그렇다면, 둘 중 어느 것을 써야 할까?

당연하겠지만 상황에 따라 다르다.

ArrayList는 기본적으로 조회에 강점이 있다. 따라서 데이터 추가/삭제가 많지 않고 조회가 많은 상황에서 사용하면 유리하다.

LinkedList는 기본적으로 데이터 추가/삭제에 강점이 있다. 따라서 데이터 추가/삭제가 빈번하게 일어나는 상황에서 사용하면 유리하다.

profile
CS, 개발 공부기록 🌱

0개의 댓글