본문 바로가기
Edu/21. 자료구조and알고리즘

자료구조(data structure) 분류

by Lacuna028 2023. 11. 23.

- 자료 구조자료(data)를 효율적으로 관리하기 위한 구조를 말함

잘 관리된 자료구조는 저장, 삭제, 탐색 등에 용이함. 

또한 목적에 맞게 사용한 좋은 자료구조는 실행시간 단출 또는 메모리 용량 절감에 효과가 있음

 

 

- 자료 구조는 크게 선형 자료구조비선형 자료구조로 구분됨

1) 선형 자료구조: 앞뒤로 배치되에 있는 데이터가 1:1로 대응되는 자료구조.

  - 배열

    : 데이터가 앞뒤로 배치되어 있고, 물리적으로도 인접하게 배치되어 있음

 

  - 연결 리스트

    : 앞 데이터가 뒤에 연결될 데이터의 링크 주소를 갖고 있어, 링크로 연결되어 있는 구조

 

  - 스택, 큐, 데크

    : 배열이나 연결 리스트를 가지고 특정 규칙을 갖는 자료 구조. 데이터 출입구조가 선입선출인 경우(큐), 후입선출인 경우(스택), 양쪽으로 들어왔다 나가는 구조(데크)인 경우에 따라 구분 

 

  - 해시 테이블

: 키와 값이 해쉬 함수 규칙에 따라 테이블에 들어가는 구조

 

 

 

 

2) 비선형 자료구조: 자료가 1: N 또는 N:N으로 연결된 자료구조

- 트리

    : 트리 형식으로 데이터(노드)가 1:N으로 계층적으로 매핑되어 있는 구조

 

- 그래프

    : 노드들이 계층적으로 연결되지 않고 옆으로 또는 위의 노드들과 연결되면서 사이클을 이루는 자료구조

 

- 힙/ 우선순위 큐

    : 트리 구조에서 작은 값이 먼저 나가거나 큰 값이 먼저 나가는 등 규칙이 적용된 자료구조

 

- 트라이

    : 트리의 일종으로 문자열을 탐색하거나 저장하기 위해 특화되어 있는 자료구조