알고리즘의 성능을 분석하고자 할 때 동일한 조건의 컴퓨터에서의 동일한 조건에서 수행시간을 측정하는 방법을 알아보자.
실제 사용할 수 있는 경우는 제한적이지만 대단히 정확하고 확실한 방법이다.
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{
clock_t start, stop;
float duration;
start = clock(); //측정 시작
// 측정하고자 하는 프로그램
stop = clock(); // 측정 종료
duration = (float)(stop - start) / CLOCK_PER_SEC;
printf("수행시간 : %f\n", duration);
return 0;
}
clock() 함수는 호출 프로세스에 의하여 사용된 CPU 시간을 계산한다.
또 한 호출 되었을 때의 시스템 시각을 CLOCK_PER_SEC 단위로 반환한다.
이 방법을 사용하여 알고리즘을 비교하려면 반드시 똑같은 하드웨어를 사용하여 알고리즘들의 수행시간을 측정하여야 한다.
그 외에도 프로그래밍 언어, 동일한 데이터 사용 등 고려해야 할 사항이 있다.