자료구조 종류

컴퓨터사이언스 2025.06.28 댓글 유니밧
반응형

자료구조는 말그대로 컴퓨터가 데이터를 저장하는 구조를 말한다. 자료구조를 배울 때는 컴퓨터 사이언스 개념과 실질 코드를 구분해서 생각하는 게 좋다. 개념적인 자료구조와 실제 언어에서 취급하는 자료구조 형식은 살짝 다르기 때문이다. 예를 들어서 data structure는 개념, 자바스크립트에서 쓰이는 Array, Map, Set 등은 실질 코드, 이렇게 생각하면 좋다. 그럼 다음으로 컴퓨터 사이언스 개념의 자료구조를 알아보자. 자료구조의 큰 종류로는 배열 Array, 리스트 List, 스택 Stack, 큐 Queue, 트리 Tree, 그래프 Graph로 총 6가지가 있다. 하나씩 알아보자.

1. 배열 Array

흔히 프로그래밍 언어에서 반복문을 처음 배울 때 처음으로 알게 되는 자료 구조다. 보통 []이런 모양으로 선언하곤 한다. 이 배열이라는 자료구조는 다음의 특징이 있다.

  • 같은 data type을 갖는 여러 개의 데이터를 하나의 변수로 묶어 놓으며, 인덱스를 통해 값의 참조를 불러온다.

2. 리스트 List

리스트는 처음 요소와 두 번째 요소가 함께 연결되어 있는 자료 구조라고 보면 된다. 그래서 연결 리스트라고도 부른다.

3. 스택 Stack

선입후출, 먼저 들어간 것이 나중에 나간다. 스택은 바닥이 막힌 상자에 물건을 집어넣고, 빼는 것이라고 생각하면 된다. 처음 넣은 것은 맨 바닥에 있으니, 당연히 마지막에 넣은 것부터 꺼낼 수 있겠지?

4. 큐 Queue

큐는 반대로 선입선출, 아래가 뚫린 구조라고 생각하면 된다. 처음 들어간 것이 바닥이 뚫려 있으니까 당연히 먼저 나가겠지? 나만 개념 상 그렇다는거고, 실제로는 오른쪽 rear로 들어가서 왼쪽 front로 빠진다.

5. 트리 Tree

트리는 DOM Tree를 생각하면 된다. 웹브라우저가 HTML을 파싱해서 자바스크립트 객체인 DOM트리를 만들어서 접근할 수 있게 해주는 그 돔 트리가 바로 이 트리 자료구조를 따른 것이다. 트리는 나무 뿌리처럼 하나의 뿌리에서 여러개의 뿌리가 나눠지는 모양의 자료구조라고 봐도 되고, 아니면 가지를 거꾸로 뒤집어 놓은 형태라고 봐도 된다. 부모와 자녀가 나눠지고 각각의 요소들을 노드라고 부른다.

6. 그래프 Graph

그래프는 마름모 오양으로 생긴 개체들이라고 보면 된다.

'컴퓨터사이언스' 카테고리의 다른 글

알고리즘 기초  (0) 2025.07.02
OSI 모델 네트워크 7계층 구조  (0) 2025.07.02
컴퓨터에서 사용되는 시간 단위  (1) 2025.06.19
프로그램이란 무엇인가?  (0) 2025.06.18
컴퓨터란 무엇인가?  (0) 2025.06.18

댓글