책과 강의소개
자료구조가 어려운 이유는 자료구조는 어느정도 구현을 요구로 하는데, C언어 배우자마자 자료구조로 넘어오느라 이 구현에서 부족한 부분이 있기 때문.
자료구조를 공부할때는 이론적 측면과, 구현하는 측면 두가지로 나눠서 이야기 할 수 있다.
자료구조의 본질은 이론이 맞지만.. 오늘날 추세는 구현의 비중도 커지고 있다. 본서에서는 구현에 비중을 두고, ADT를 중심으로 강의를 이어가겠다.
자료구조의 본질이 이론이라는 것은, 자료구조는 태생이 수학에서 왔기 때문. 따라서 구현된 코드를 보고 이론을 유추하는 것은 잘못된 공부. 올바른 이론이 우선 바탕이 되어야 한다.
CH1-1. 자료구조에 대한 기본적인 이해
01-1. 자료구조(Data Structure)에 대한 기본적인 이해
자료구조는 재귀함수에 대해 숙련도가 필요하다.
자료구조란?
프로그램은 데이터를 표현(목적, 자료구조)하고, 표현된 데이터를 처리(방식, 알고리즘) 하는 것이다.
즉 자료구조는 목적에 맞게 데이터를 잘 표현하기 위해 사용되는 것.
데이터를 표현한다는 것은?
어떤 방식으로 Data를 저장할 것인지 선택하는 것
자료구조와 알고리즘의 차이.. 1에서 10까지 합을 구하는 목적이 있다면, 1부터 10까지 어떻게 저장할 것인지(배열 선언) 정하고, 이후 합을 구하는 방식(반복문)을 통해 수를 처리한다.