[CS - 자료구조] 자료구조란?

리선맨·2023년 10월 31일

자료구조

목록 보기
1/7

1. 자료와 정보

1.1 자료

현실 세계에서 관찰이나 측정을 통해서 수집된 값(value)이나 사실(fact)로 이는 숫자, 문자, 이미지, 음성 등과 같은 다양한 형태로 존재할 수 있다.

1.2 정보

어떤 상황에 대해서 적절한 의사결정(decision)을 할 수 있게 하는 지식(knowledge)으로 활용될 수 있도록 ‘처리 과정’을 거쳐서 정리되고 정돈된 ‘자료’의 2차 처리 결과물이다.

자료(Data) → 컴퓨터 처리(Process) → 정보(Information)
I = P(D)

즉, 프로세스에 자료를 대입하여 처리를 한 결과물이 정보이다.

2. 자료구조와 알고리즘

2.1 자료구조

자료 사이의 논리적 관계를 컴퓨터나 프로그램에 적용하기 위해서는 *자료의 추상화가 필요하며 추상화를 통해 자료의 논리적 관계를 구조화한 것을 자료구조(data structure)라고 한다.

추상화 : 공통적인 개념을 이용하여 같은 종류의 다양한 객체를 정의한 것.
자료의 추상화 : 다양한 대상을 컴퓨터에 저장하고 처리하기 위해 대상들의 공통 특징만을 뽑아 정의한 것.

2.2 자료구조의 종류

2.3 알고리즘

컴퓨터에 의해 수행되기 위해 필요한 명령어들의 유한 집합이 사람의 머릿속에 추상화되어 존재하는 것.
알고리즘이 가지고 있어야 하는 조건은 ① 출력, ② 유효성, ③ 입력, ④ 명확성, ⑤ 유한성 등이 있다.

2.4 자료구조와 알고리즘의 관계

자료구조 : 입력 자료에 대한 추상화된 상태
알고리즘 : 컴퓨터가 수행해야 할 명령의 추상화
즉, 자료구조로 구조화하고 알고리즘으로 체계화한다.
이러한 자료구조와 알고리즘을 구체화하는 수단 중 하나가 프로그래밍 언어이다.

profile
프론트엔드 개발 공부중인 주니어 개발자의 복습노트

0개의 댓글