● 정의
데이터를 조직적으로 관리하여 구조적으로 표현하는 방식과 이를 구현하는데 필요한 기능을 가능하게 하는 기술이다.
데이터 값의 집합, 데이터의 관계, 데이터에 적용시킬 수 있는 함수나 명령
※ 다시말해, 데이터를 효율적으로 다룰 수 있는 방법!!!
● 특징
- 효율성
- 상황에 맞는 자료구조를 사용함으로 데이터의 효율적 처리가 가능하다.
- 추상화
- 어떻게 구현했는지보다 어떻게 사용해야 하는지를 알고 있어야 한다.
- 재사용성
● 종류
- 배열 (Array)
- 연속 리스트 (contiguous List)
- 연결 리스트 (Linked List)
- 스택 (Stack)
- 큐 (Queue)
- 그래프 (Graph)
- 트리 (Tree)
선형구조 / 비선형구조로 나뉜다. (비선형 : 그래프, 트리)
● 장/단점
1. 배열
트리
노드로 구성된 계층적인 자료구조