상세 컨텐츠

본문 제목

#1. 자료구조와 알고리즘의 이해

프로그래밍 및 언어/자료구조 학습

by 남민우_ 2024. 10. 17. 23:11

본문

컴퓨터 공학의 기초 지식을 재학습하던 중, 자료구조의 중요성과 사용 가치를 굳건히 하기 위해 학습한다.

자료구조란 무엇인가

"프로그램이란 데이터를 표현하고 그렇게 표현된 데이터를 처리 하는 것" 

이 때 '데이터를 표현' 하는 것을 자료구조, '표현된 데이터를 처리' 하는 것을 알고리즘 이라고 볼 수 있다.

이 데이터를 표현 에는 저장 의 의미가 내포되어 있다.

따라서 자료구조란 결국 데이터를 저장하는 컴퓨터 공학이다 라고도 이해할 수 있다.

더보기

데이터 값의 모임, 또 데이터 간의 관계, 그리고 데이터에 적용할 수 있는 함수나 명령을 의미 한다고도 말한다.

https://ko.wikipedia.org/wiki/%EC%9E%90%EB%A3%8C_%EA%B5%AC%EC%A1%B0

 

자료구조의 분류

 

총 4가지의 큰 타입, 그리고 각각의 세분화가 나누어져 있다.

 

int main()
{
	//배열의 선언
    int arr[10] = {1,2,3,4,5,6,7,8,9,10};
    int sum = 0;
    
    //배열에 저장된 값의 합을 구함
    for(int i = 0; i<10; i++)
    {
    	sum += arr[i];
    }
}

이 예시 코드에서 '배열의 선언' 을 자료구조, '배열에 저장된 값의 합을 구하는 과정' 을 알고리즘 이라고 표현할 수 있다.

그만큼 알고리즘 자체는 자료구조에 의존적인 형태를 지니고 있다.

해서 우리가 자료구조에 대해 학습할 때 항상 '자료구조와 알고리즘' 이라고 묶어서 학습하게 되는 것이다.

 

자료구조의 학습 방법

학습 방법은 두가지가 있다.

1. 자료 구조의 모델 자체에 대한 이해와 이론 중심 학습

2. 코드 레벨에서의 자료구조 구현 중심 학습

 

기억해야 할 것으로는

1. 자료구조의 모델을 그림으로 우선 이해하고

2. 꼭 코드로 구현해야만 학습의 의미가 있는 것은 아니다.

 

가 있다.

 

 

 


#프로그래밍 및 언어 - 자료구조 학습 의 모든 내용은 '윤성우의 열혈 자료구조' 에서 학습한 내용임을 밝힙니다.

https://cafe.naver.com/cstudyjava

 

관련글 더보기