입력 크기가 커질 때 알고리즘의 실행 시간이 어떤 비율로 늘어나는지를 나타낸 것이다. 초 단위 실행 시간은 기계와 언어에 따라 달라지므로, 대신 기본 연산이 몇 번 일어나는지를 입력 크기 의 함수로 센다.

표기

가장 많이 쓰는 것은 big-O 다. 은 충분히 큰 에서 실행 횟수가 의 상수배를 넘지 않는다는 뜻, 즉 위쪽 한계를 말한다. 상수배와 낮은 차수 항은 버리므로 이다.

표기
이보다 느리지는 않다 (상한)
이보다 빠르지는 않다 (하한)
상한과 하한이 같다

최악·평균·최선

같은 알고리즘도 입력 모양에 따라 걸리는 시간이 다르다. Insertion Sort 는 이미 정렬된 배열에서 이지만 역순 배열에서는 이다. 각 원소가 제자리에서 최대 칸 떨어져 있는 배열이라면 으로 끝난다. 그래서 ” 정렬” 이라는 한마디만으로는 그 알고리즘이 언제 유리한지 알 수 없다.

한 번의 연산이 아니라 연산 여러 번의 평균 비용을 따지는 방식은 amortized analysis 에 있다.

흔한 증가율

비교 기반 정렬은 보다 빠를 수 없다는 하한이 증명돼 있다. 이상이 되면 이 조금만 커져도 현실적으로 계산이 끝나지 않는데, 다항 시간 알고리즘이 알려져 있지 않은 문제들의 분류는 NP-complete 를 참고한다.