loading
본문 바로가기
Knowledge/자료구조

[ DATA STRUCTURE ] 자료구조

by NeuLyeo 2023. 11. 29.

[ DATA STRUCTURE ] 자료구조

 

 

 

 

📚 Table of Contents

     

     

     

     

    자료 구조 ( data structure )란 무엇인가?

    컴퓨터 과학에서 효율적인 접근 및 수정을 가능케 하는 자료의 조직, 관리, 저장을 의미한다.

     

    즉, 문제 해결이 쉽도록, 데이터에 손쉬운 접근, 변경, 처리가 가능하게 데이터를 저장, 표현하는 방법을 의미한다.

     

        - 구조화된 데이터에 특정한 연산들을 용이하게 할 수 있는 구조

     

     

    알고리즘 적용 시, 효과적으로 처리 가능하도록 만들어진, 특화된 데이터 체제 / 형태 의미한다.


        - 배열, 연결 리스트, 스택, 큐, 트리, 그래프 등

     

     

    자료 및 그 처리를 함께 고려하는 데이터 형식이다.


        - 즉, 자료와 그 작동을 함께 고려한다.


            - 컴퓨터에 효과적을 표현, 저장, 처리하는 기술


        - 자료와 처리를 잘 감싸는 (캡슐화) 것을, 추상자료형 이라고 한다.

     

     

     

     

     

    자료 구조의 목적 / 이유

    추상화

    크고 복잡한 상황을 간결하고 명확하게 단순화 시킨다.
        - 약속된 자료구조를 쓰면 좀 더 높은 단계의 프로그래밍이 가능하다.

     

     

     

     

    효율성

    • 가용 자원을 절약 할 수 있다.
      • 좋은 자료구조는 연산의 횟수를 작아지게 할 수 있지만, 모든 목적에 적합한 단일한 자료구조는 없고, 응용에 따라 달라진다.

    문제 마다 적절한 자료구조를 사용함으로써

     

    사용 편의성, 메모리 효율성, 코드 성능, 버그 감소 등에 유리하다.

     

     

     

     

     

    자료구조의 종류

    단순 구조

    통상, 자료구조로써 구분하지 않는다.

     

    문자형, 숫자형, 논리형 등

     

     

     

     

    자료 간의 연결 형태 / 모양에 따른 구분

    선형 자료 구조 ( Linear, 전후 1 : 1 연결 형태)

    • 기본 선형 자료 구조 : 리스트, 연결 리스트, 배열, 스택, 해쉬 테이블
    • 제한 성형 자료 구조 : 스택, 큐, 데크 ( 스택과 큐가 혼합된 형태 )

     

     

    비선형 자료구조 ( nonlinear, 전후 N : N 연결 형태 )

    트리 그래프 등

     

     

     

     

    자료 간 연속, 연결 구조에 따른 구분

    배열에 기반한 연속 방식 구조 ( Continuation )

    선형 리스트

     

     

    포인터 기반의 연결 방식 구조 ( Link )

    연결 리스트 등

     

     

     

     

    기타

    • 집합
    • 딕셔너리 등

     

     

     

     

     

    선형 자료 구조 ( Linear Data Structure )

    선형 자료 구조란?

    한 원소 뒤에 하나의 원소 만이 존재한다.


        - 자료들이1 직선 형태로 나열되어 있는 구조


        - 전후 / 인접 / 선후 원소들 간에 1 : 1 관계로 나열

     

     

     

    특징

    • 구조가 간단하다.
    • 기억장소 효율이 높다. (메모리 밀도 높음)
    • 원소들간에 순서를 고려한다.
    • 모든 원소들을 순회하기 쉽다.

     

     

     

    종류

    기본 선형 자료 구조

    리스트, 연결 리스트, 배열 등

     

    자료의 삽입 및 삭제가 어느 위치에서도 이루어진다.

     

     

    제한 선형 자료 구조

    스택, 큐, 데크 등

     

    자료의 삽입 및 삭제가 정해진 위치에서만 이루어진다.

     

     

     

     

     

    비선형 자료 구조 ( Nonlinear Data Structure )

    한 원소 뒤에 여러 개의 원소들이 존재한다.


        - 인접 원소들 간에 n : n 관계로 배치된다.

     

     

     

    특징

    • 계층적 구조를 나타내게이 적절하다.
      • 조상 - 자손 간의 관계, 컴퓨터 폴더 구조 등
    • 원소들간에 순서 관계가 중요하지 않다.
    • 모든 원소들을 순회하기 쉽지 않다.

     

     

     

    종류

    트리, 그래프 등

     

     

     

     

     

    reference

     

    자료구조 종류

    자료구조 구분, 선형 자료구조, 비선형 자료구조

    www.ktword.co.kr