# 1. 알고리즘의 분석 * 알고리즘의 자원(resource) 사용량을 분석 * 자원이란 실행시간, 메모리, 저장장치, 통신 등 * 여기서 실행시간의 분석에 대해서 다룸 ## 시간복잡도 * 실행시간은 실행환경에 따라 달라짐 * 하드웨어, 운영체제, 언어, 컴파일러 등 * 실행시간을 측정하는 대신 연산의 실행 횟수를 카운트 * 연산의 실행 횟수는 입력 데이터의 크기에 관한 함수로 표현 * 데이터의 크기가 같더라도 실제 데이터에 따라서 달라짐 * 최악의 경우 시간복잡도(worst-case analysis) * 평균 시간복잡도(average-case analysis) ## 점근적(Asymptotic) 분석 ### 점근적 표기법을 사용 * 데이터의 개수 n → ∞ 일때 수행시간이 증가하는 growth rat..