1. 자료구조의 종류
ㅇ 단순 구조 (통상, 자료구조로써 구분 포함시키지 않음)
- 문자형,문자열형,숫자형,논리형 등 ☞ 자료형, C 언어 자료형 등 참조
ㅇ 자료 간의 연결 형태/모양에 따른 구분
- 선형 자료구조 (linear, 전후 1:1 연결 형태)
. 기본 선형 자료구조 : 例) 리스트, 연결 리스트, 배열, 레코드 등
. 제한 선형 자료구조 : 例) 스택, 큐, 데크(스택과 큐가 혼합된 형태) 등
- 비선형 자료구조 (nonlinear, 전후 多:多 연결 형태)
. 例) 트리, 그래프 등
ㅇ 자료 간에 연속,연결 구조에 따른 구분
- 배열에 기반한 연속 방식 구조 (continuation) : 例) 선형 리스트 등
- 포인터 기반의 연결 방식 구조 (link) : 例) 연결 리스트 등
ㅇ 기타 자료구조
- 집합
- 딕셔너리/사전 등
2. 선형 자료구조 (Linear Data Structure)
ㅇ 한 원소 뒤에 하나의 원소 만이 존재함
- 자료들이 직선 형태로 나열되어 있는 구조
. 전후/인접/선후 원소들 간에 1:1 관계로 나열됨
ㅇ 특징
- 구조 간단, 기억장소 효율 높음 (메모리 밀도 높음)
- 원소들간에 순서를 고려함
- 모든 원소들을 순회하기 쉬움
ㅇ 선형 자료구조 例)
- 기본 선형 자료구조 : 例) 리스트, 연결 리스트, 배열, 레코드 등
. 특징 : 자료의 삽입 및 삭제가 어느 위치에서도 이루어짐
- 제한 선형 자료구조 : 例) 스택, 큐, 데크(스택과 큐가 혼합된 형태) 등
. 특징 : 자료의 삽입 및 삭제가 정해진 위치에서만 이루어짐
. 주요 필요 동작(연산) : push(), pop(), overflow(), underflow() 등
3. 비선형 자료구조 (Nonlinear Data Structure)
ㅇ 한 원소 뒤에 여러개의 원소들이 존재할 수 있음
- 인접(전후) 원소들 간에 多:多 관계로 배치됨
ㅇ 특징
- 계층적 구조(Hierarchical Structure)를 나타내기에 적절
. 例) 가계도상에서 조상-자손 간의 관계, 직장 상사-부하 간의 관계,
컴퓨터 폴더 구조 등
- 원소들간에 순서 관계가 중요하지 않음
- 모든 원소들을 순회하기 쉽지 않음 ☞ 그래프 순회 참조
ㅇ 비선형 자료구조 例) : 트리, 그래프 등