자료구조 (Data Structure)
- 데이터를 효율적으로 접근하고 조작할 수 있도록 데이터의 구조를 만든 것
- 자료구조마다 장단점이 있기 때문에 자신의 목적에 맞는 자료구조를 선택해야 한다.
- 잘 설계된 자료구조를 사용하면 시간과 메모리를 효율적으로 사용할 수 있다.
추상자료형 (ADT)
- 알고리즘이 문제를 해결하는데 필요한 자료의 형태와 그 자료를 사용한 연산들을 수학적으로 정의한 모델
추상자료형과 자료구조의 차이
- 추상자료형은 무엇이 구현되어야 하는지 자료의 논리적 형태를 정의
- 자료구조는 어떻게 구현할 지를 파악해서 물리적 형태로 구현하는 것
- 예를 들어 스택(Stack)은 추상 자료형으로 마지막에 입력된 데이터가 먼저 사용된다. 스택은 자료구조 구현 측면에서 배열로도 구현할 수 있고, 연결 리스트 형태로 구현할 수도 있다.
'알고리즘 & 자료구조 > 자료구조' 카테고리의 다른 글
[자료구조] 단일 연결 리스트(Singly Linked List) (0) | 2023.11.12 |
---|---|
[자료구조] 연결 리스트(Linked List) (0) | 2023.11.12 |
[자료구조] 원형 배열(Circular Array) (0) | 2023.11.05 |
[자료구조] 배열(Array) (0) | 2023.09.12 |