배열과 연결리스트의 차이

nayoon·2021년 6월 11일
0

면접

목록 보기
2/4

공통점

데이터를 나열한다.

차이점

다르기 때문에 사용하기에 따라 프로그램의 성능이 달라지게 된다.

배열

ARRAY

  1. 데이터 입력이 순차적으로 이루어지며, 물리적 주소 또한 순차적이다.

  2. 인덱스가 있어 원하는 데이터에 한번에 접근 가능하기 때문에 데이터 접근 속도가 매우 빠르다.

  3. 데이터 삽입, 삭제에 취약하다.
    배열 특성상 데이터 삽입, 삭제가 이루어지면 해당 위치의 다음 순서의 데이터의 위치 변경이 이루어지기 때문이다.

  4. 배열의 크기가 처음에 결정되어서(unresizable) 변경이 불가능하다.

연결리스트

LINKNED LIST
1. 데이터 입력이 논리적 순서로 이루어지며 물리적 주소는 순차적이지 않다.

  1. 인덱스를 가지고 있는 배열과는 다르게 리스트는 인덱스 대신 현재 위치의 이전 및 다음 위치에 대한 정보가 있다.

  2. 데이터 접근 시 연결되어 있는 링크를 따라가야 하기 때문에 배열에 비해 속도가 떨어진다.

  3. 데이터 삽입, 삭제는 논리적 주소만 바꿔주면 되기 때문에 용이하다.

  4. 언제든지 메모리 할당/해제를 해서 크기를 변경할 수 있다.(resizable)

참고 사이트

https://loadofprogrammer.tistory.com/77
https://letitkang.tistory.com/111

profile
뚜벅뚜벅 열심히 공부하는 개발자

0개의 댓글