본문 바로가기
컴퓨터공학 기초/자료구조

[자료구조] 배열 vs List 비교하기

by 상용최 2020. 2. 10.
반응형

배열(Array) 이란 ?

  • 여러 데이터를 하나의 이름으로 그룹핑해서 관리 하기 위한 자료구조
  • 배열의 인덱스는 유일무이한 값 식별자

배열의 특징

  • 크기가 정해져있다.
  • 데이터를 메모리에 순차적으로 나열가능
  • 인덱스를 활용하여 검색에 최적화 되어있다.
  • 저장될 때 인접한 Memory 또는 Memory에 연이어 저장된다.
  • Stack 영역에 메모리 할당

배열의 단점

  • 크기를 수정할 수 없다.
  • 배열은 인덱스에 따라 값이 유지되기때문에 엘레먼트가 삭제되어도 메모리는 차지한다.
  • 삽입, 삭제시 비용이 많이 들 수 있다.

 

List란 ?

  • 빈틈없는 데이터의 적재라는 장점을 취한 데이터 스트럭쳐

List의 특징

  • 데이터간의 순서가 존재한다.
  • 인덱스는 몇번째 데이터인가 정도의 의미이다.
  • 빈 엘레먼트를 허용하지 않는다.
  • 크기가 정해져있지 않다.
  • Memory 어딘가에 저장된다.
  • 삽입, 삭제가 간편하다
  • Heap 영역에 메모리 할당

List의 단점

  • 검색이 배열보다 오래걸린다.

 

데이터의 크기가 정해져있어 삽입,삭제 연산이 적고 검색을 주로 하는경우에는 배열

데이터의 크기가 유동적이며 삽입,삭제가 빈번하게 일어날때는 List가 좋다

 

반응형

'컴퓨터공학 기초 > 자료구조' 카테고리의 다른 글

[자료구조] 해쉬(Hash)란?  (0) 2020.02.15
[자료구조] 힙(Heap)이란 ?  (0) 2020.02.11

댓글