[Data Structures][01-1] 자료구조(Data Structure)에 대한 기본적인 이해
Data Structures

[Data Structures][01-1] 자료구조(Data Structure)에 대한 기본적인 이해

본 글은 윤성우의 열혈 자료구조 책을 읽고 복습한 것을 기록한 글입니다.


- 자료구조란 무엇인가?

- 자료구조와 알고리즘

- 본서에서 자료구조를 설명하는 방향

 


자료구조란 무엇인가?

 

                              자료구조                                               알고리즘

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

 

자료구조의 분류

선형 자료구조 - 데이터를 선의 형태로 나란히 혹은 일렬로 저장하는 방식

비선형 구조 - 데이터를 나란히 저장하지 않는 구조

 


자료구조와 알고리즘

 

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

배열의 선언 부분 - 자료구조

배열의 합을 도출하는 부분 - 알고리즘

 

알고리즘은 자료구조에 의존적이다!

 


본서에서 자료구조를 설명하는 방향

 

자료구조 학습 방법의 구분

- 자료구조의 모델 자체에 대한 이해 중심 학습

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

 

자료구조 학습에 있어서 기억할 것 두 가지

- 자료구조의 모델을 그림을 우선 이해해야 한다.

- 구현이 가능해야만 의미가 있는 것은 아니다.