Skip to content

Posts 자료구조 #
Find similar titles

Structured data

Category
Programming

자료구조 #

자료와 정보 #

자료(data)란 연구나 조사를 통해 수집한 사실이나 개념의 값 또는 이들의 집합이다. 흔히 가공되지 않은 형태의 데이터를 자료라고 하며, 특정 용도로 사용하기 위하여 자료를 의미 있게 처리/가공한 형태의 데이터를 정보(information)라고 한다.

자료구조 #

자료구조(data structure)란 자료(data)에 대한 처리를 효율적으로 수행 및 사용할 수 있도록 자료를 자료의 특성에 따라서 조직적, 체계적으로 만들어서 저장하여 자료들의 집합을 표현한 것을 말한다.

Image

자료구조의 선택 기준 #

상황에 따른 적절한 자료구조를 선택하여 사용하면 작업의 효율성, 추상화, 재사용성을 증대시킬 수 있다. 자료의 처리를 좀 더 효율적으로 하기 위해 아래의 사항들을 고려하여야 한다.

  • 처리시간, 양
  • 프로그램의 유지보수
  • 자료의 업데이트나 활용 정도
  • 프로그래밍 기법의 용이성

자료구조의 특징 #

효율성(Efficiency) #

상황에 맞는 적절한 자료구조를 이용하게 되면 데이터 처리의 효율을 높일 수 있다.

추상화(Abstraction) #

자료구조의 추상화는 특정 자료구조 자체의 내부 구현은 그리 중요하지 않기 때문에 실제 구현한 언어가 무엇인지에 따라 실제 그 코드는 다르지만 추상적인 개념에 대해서만 알고 있으면 되기 때문에 언어에 종속적이지 않다는 특징을 가진다.

재사용성(Reusability) #

자료구조를 설계할 때 특정 프로그램에 맞추어 설계하지 않고 다양한 프로그램에서 사용될 수 있도록 범용화하기 때문에 해당 자료구조의 인터페이스만 이용하여 데이터를 처리하도록 하여 모듈화(재사용)가 가능하다.

자료구조의 분류 #

자료구조는 크게 선형 구조와 비선형 구조로 나눌 수 있다.

선형 구조 #

자료들이 1 : 1의 관계(일렬로 연결되는)로 처리되는 자료구조이다.

  • 배열(Array)
    가장 일반적인 구조로서 인덱스인덱스에 대응하는 데이터들로 이루어진 자료 구조
  • 연결 리스트(Linked List)
    노드가 데이터와 포인터를 가지고 한 줄로 연결되어 있는 방식으로 데이터를 저장하는 자료 구조
  • 스택(Stack)
    후입선출(後入先出, Last In First Out)의 자료구조
  • (Queue)
    선입선출(先入先出, First In First Out)의 자료구조
  • 데큐(Dequeue)
    양쪽에서 모두 삽입/인출이 가능한 자료구조

비선형 구조 #

자료들의 구성이 1 : 1이 아닌 1 : n, n : m 간의 관계를 가지고 처리 되는 복잡한 자료 구조이다.

Reference #

THOMAS H.CORMEN 저, Introduction to algorithms, 한빛미디어

Incoming Links #

Related Data Sciences #

Related Articles #

Suggested Pages #

Other Posts #

0.0.1_20140628_0