자료구조와 알고리즘
·
Data Structure
프로그램은 자료를 처리하기 위해 자료구조(data structure)를 사용한다. 또한 주어진 문제를 처리하는 절차를 알고리즘(algorithm)이라고 한다. 예를 들어 자료를 저장하는 배열이 자료구조가 되고, 배열에 저장된 값 중 가장 큰 값을 찾는 절차를 알고리즘이라고 한다. 프로그램 = 자료구조 + 알고리즘 알고리즘은 특정한 일을 수행하는 명령어들의 집합이다. 모든 명령어들의 집합이 알고리즘이 되는 것은 아니고, 아래와 같은 조건들을 만족하는 집합만이 알고리즘으로 정의된다. 0개 이상의 입력이 존재해야 한다. 1개 이상의 출력이 존재해야 한다. 각 명령어의 의미는 모호하지 않고 명확해야 한다. 한정된 수의 단계 후에는 반드시 종료되어야 한다. 각 명령어들은 실행 가능한 연산이어야 한다.