[용어 정리] 자료구조(Data structure)란 무엇인가?

2021. 7. 23. 17:27·CS
목차
  1. 자료구조
  2. 자료구조의 목적
  3. 자료구조 종류
  4. 선형 구조 (Linear data Structure)
  5. 비선형 구조 (Non-linear data Structure)
  6. 리스트 (List)
  7. 스택 (Stack)
  8. 큐 (Queue)
  9. 데크 (Double-ended queue)
  10. 그래프 (Graphs)
  11. 트리 (Trees)
  12. 참고 자료

자료구조

자료(Data)의 집합

Data를 저장하고, 관리하기 위해 사용하는 구조

자료구조의 목적

데이터를 효율적으로 저장 및 관리하여 메모리를 효율적으로 사용하기 위함

자료구조의 사용은 메모리의 용량을 절약해주고, 실행 시간을 단축시켜줌

자료구조 종류

선형 구조 (Linear data Structure)

데이터를 일렬로 저장하는 방식
  • 리스트 (List)
  • 스택 (Stack)
  • 큐 (Queue)
  • 데크 (deque)

비선형 구조 (Non-linear data Structure)

데이터를 나란히 저장하지 않는 구조
  • 그래프 (Graphs)
  • 트리 (Trees)

리스트 (List)

단순 연결 리스트

원형 연결 리스트

이중 연결 리스트

출처 https://yjg-lab.tistory.com/118


스택 (Stack)

한 쪽 끝에서만 자료를 넣거나 뺄 수 있는 LIFO (Last In First Out) 구조로 저장

나열 순서를 바꿀때 스택에 넣었다가 꺼내면 역순이 됨

물건 쌓기

출처 https://en.wikipedia.org/wiki/Stack_(abstract_data_type)


큐 (Queue)

먼저 집어 넣은 데이터가 먼저 나오는 FIFO (First In First Out) 구조로 저장

프로세스 관리 등 데이터가 입력된 시간 순서대로 처리해야 할 필요가 있는 상황에 이용

매표소 줄

출처 https://en.wikipedia.org/wiki/Queue_(abstract_data_type)


데크 (Double-ended queue)

양쪽 끝에서 삽입과 삭제가 모두 가능한 자료 구조의 한 형태

큐와 스택을 합친 형태로 생각

출처 https://runestone.academy/runestone/books/published/pythonds/BasicDS/WhatIsaDeque.html


그래프 (Graphs)

각 점들을 node 혹은 Vertex라고 하고, 잇는 선을 Edge 라고 함

교통, GPS 네비게이션, 네트워크 라우팅등 에 사용 됨

출처 http://www.btechsmartclass.com/data_structures/introduction-to-graphs.html

 


트리 (Trees)

노드로 이루어진 자료 구조

계층 구조

PC에서 폴더 - 파일을 예로 들 수 있음
ex) A폴더 > B폴더 > C폴더 > index.html
  1. 하나의 루트 노드(최상위 노드)를 가짐
  2. 루트 노드는 0개 이상의 자식 노드를 가짐
  3. 그 자식 노드 또한 0개 이상의 자식 노드를 갖고 있고, 이것이 반복적으로 정의 됨

출처 https://en.wikipedia.org/wiki/Tree_(data_structure)

 


참고 자료

 

https://helloworld-88.tistory.com/82

 

[알고리즘] 자료구조 란?

자료구조란? 자료구조(data structure)는 컴퓨터 과학에서 효율적인 접근 및 수정을 가능케 하는 자료의 집합을 의미하며 각 원소들 사이의 관계가 논리적으로 정의된 일정한 규칙에 의하여 나열되

helloworld-88.tistory.com

https://supermemi.tistory.com/18

 

자료구조란 무엇인가? (개요)

자료구조란? 간단한 도서관 이라는 예를 가지고 생각해 보자. 자료 = 도서관의 무수한 책 구조 = 정리하는 규칙과 방법에 따라서 책장을 쌓고 정리한 구조. 도서관에 가서 책을 찾을때, 구조가 엉

supermemi.tistory.com

https://makemethink.tistory.com/125

 

[자료구조] 7-1. 트리의 개념

지금까지 배운 자료구조는 배열, 연결 리스트, 스택, 큐 등이 있었다. 공통점은 다들 리스트형, 선형 자료 구조였다는 것이다. 따라서 모든 원소는 인덱스에 대응되어 순서대로 찾아나갈 수 있다

makemethink.tistory.com

 

반응형
저작자표시 (새창열림)
  1. 자료구조
  2. 자료구조의 목적
  3. 자료구조 종류
  4. 선형 구조 (Linear data Structure)
  5. 비선형 구조 (Non-linear data Structure)
  6. 리스트 (List)
  7. 스택 (Stack)
  8. 큐 (Queue)
  9. 데크 (Double-ended queue)
  10. 그래프 (Graphs)
  11. 트리 (Trees)
  12. 참고 자료
'CS' 카테고리의 다른 글
  • [용어 정리] REST API (RESTful API) 란 무엇인가?
  • [용어 정리] MVC 디자인 패턴이란 무엇인가?
  • [용어 정리] 렌더링 방식과 웹 아키텍처에 따른 분류 CSR/SSR SPA/MPA
  • [용어 정리] Firebase (파이어베이스)란 무엇인가?
꾸매코더
꾸매코더
웹 / 앱 개발자
  • 꾸매코더
    꾸매코딩
    꾸매코더
  • 전체
    오늘
    어제
    • 분류 전체보기 (97)
      • JavaScript (18)
        • Deep Dive (0)
      • React (5)
      • React-Native (9)
      • CSS (3)
      • TypeScript (1)
      • CS (10)
      • GitHub (4)
      • Clone Coding (15)
        • Kakaotalk [HTML + CSS] (10)
        • Momentum [JavaScript] (5)
      • Project (30)
        • Timer Project (14)
        • Netflix [React + Hooks] (12)
        • ToDoList [React-Native] (4)
      • 회고 (2)
  • 링크

    • Github
  • hELLO· Designed By정상우.v4.10.3
꾸매코더
[용어 정리] 자료구조(Data structure)란 무엇인가?

개인정보

  • 티스토리 홈
  • 포럼
  • 로그인
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.