Array와 LinkedList

wkdtmddus·2023년 8월 13일
0

Array(배열)

배열은 동일한 데이터 타입의 요소들이 순차적으로 저장되는 자료구조입니다.
배열은 고정된 크기를 가지며, 인덱스를 사용하여 각 요소에 접근할 수 있습니다.
메모리에 연속적으로 할당되어 있어 데이터 접근이 빠르지만, 크기를 동적으로 변경하는 것은 어렵습니다.
배열은 일반적으로 같은 데이터 타입의 요소들을 순차적으로 저장할 때 사용됩니다.

LinkedList(연결 리스트)

연결 리스트는 각 요소가 자신의 다음 요소를 가리키는 방식으로 구성된 자료구조입니다.
연결 리스트는 동적으로 크기가 조절될 수 있으며, 요소의 삽입 및 삭제가 빠르게 이루어집니다.
메모리에 연속적으로 할당되지 않아 데이터 접근이 느리지만, 데이터의 삽입과 삭제가 유연하게 가능합니다.
연결 리스트는 데이터의 삽입 및 삭제가 빈번하거나 크기가 동적으로 변경될 때 사용됩니다.


Array와 LinkedList 사용 예

  • Array :

    고정된 크기를 가지는 데이터의 저장이 필요할 때 사용됩니다.
    예를 들어, 정렬된 숫자 배열에서 특정 값을 찾는 것과 같이 데이터 접근이 빈번한 경우에 유용합니다.

  • LinkedList :

    데이터의 삽입과 삭제가 빈번하게 일어나는 경우에 사용됩니다.
    예를 들어, 작업 목록이나 인터넷 브라우저의 이전/다음 페이지 목록과 같이 데이터의 순서가 빈번하게 변경되는 경우에 유용합니다.


선택 기준

Array와 LinkedList 중 선택할 때, 다음과 같은 상황을 고려합니다.

  • 데이터의 크기가 변하지 않거나 크기가 작을 때: Array
  • 데이터의 삽입 및 삭제가 빈번하게 발생하거나 크기가 동적으로 변경될 때: LinkedList

주의할 점은, 각 자료구조마다 특정 작업에 더 적합한 경우가 있으며, 프로그램의 요구사항과 성능 요건을 고려하여 선택해야 합니다.

0개의 댓글