Array 와 List 의 차이는 무엇일까?

 

우선 Array

연속적인 메모리에서 같은 종류의 아이템들을 저장할 수 있는 자료구조다. [ ] 를 사용하여 인덱스를 활용할 수 있다. 

인덱스를 사용하면 사이즈가 얼마나 크던지 원하는 자료에 접근할때 걸리는 시간이 동일하다.

 

 

List 는 무엇일까?

순서를 가지며 추가, 삭제, 탐색이 가능한 ADT(Abstract Data Type) 이다. Array에 비해서 추상적이다 내부적으로 어떻게 동작하는지 알려주지 않는다. 

* ADT는 구조의 속성과 행위를 설명한다. 

 

따라서 

  • add
  • remove
  • get
  • contains

같은 operation을 사용 가능하다.

 

List는 어떻게 구현할 수 있을까?

  • Array (= ArrayList)
  • Linked node (= LinkedList) 

크게 두 가지를 사용하여 구현 가능하다. 

 

 

구현에 관점에서 List 는 ADT이고 안에 있는 ArrayList나 LinkedList 등이 자료구조라고 할 수 있다.

 

 

'자료구조&알고리즘' 카테고리의 다른 글

Array에서 Index는 왜 0부터 시작할까?  (2) 2023.09.15
List 와 Set  (1) 2023.09.12
Array List 와 Linked List  (1) 2023.09.08
Queue(큐)  (0) 2023.09.08
Stack  (0) 2023.09.08

+ Recent posts