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 |