자료구조

01. 자료구조와 알고리즘

고규마 2017. 12. 21. 01:09

 대부분의 컴퓨터 프로그램은 자료(data)를 처리하고 있고 이들 자료는 자료구조(data structure)를 사용하여 표현되고 저장된다. 또한 주어진 문제를 처리하는 절차가 필요하다. 이것은 알고리즘(algorithm)이라고 불린다. 따라서 일반적인 프로그램은 논리적으로 따져보면 자료구조와 알고리즘으로 구성되어 있다고 할 수 있다.  

 프로그램 = 자료 구조 + 알고리즘 

 엄밀하게 이야기하면 알고리즘이란 문제와 컴퓨터가 주어진 상태에서 문제를 해결하는 방법을 정밀하게 장치가 이해할 수 있는 언어로 기술한 것이다. 따라서 알고리즘은 특정한 일을 수행하는 명령어들의 집합이다.

 

 추상 데이터 타입이란 새로운 데이터 타입을 추상적으로 정의한 것이다. 자료구조(data structure)는 이러한 추상 데이터 타입을 프로그래밍 언어로 구현한것이라 할 수 있다.


알고리즘의 성능 분석 : 시간 복잡도 함수, 공간 복잡도 함수