2013-09-25 2 views
0

이 예제에서는 Big O 런타임의 복잡성에 대해 궁금한가요?Big Oh 런타임에 루프가 입력되지 않습니다. (n)

public void example(int n) { 
    for (int i = 0; i<32; i++) { 
     System.out.print(i); 
    } 
} 

우리는 n을 반복하지 않기 때문에 그 O (n)을 생각하지 않습니다. 대신 32 시간 반복합니다. 감사합니다.

+0

나는 이것이 프로그래머에 있어야한다고 생각합니다 .SE? –

+2

그것의 O (1) ...... – tia

답변

2

항상 32 시간의 작업을 수행하므로이 작업은 일정 시간 작동이므로 O(1) (또는 Theta(1))입니다. 비록 O 표기법이 단지 상한선 인 이어도 O(n), O(lg n) 또는 심지어 O(n^n^n^n)입니다. O(1)은이 코드에 대해 점근 적으로 가장 엄격한 경계에 불과합니다. Theta 표기법은 정확한 (아래에서 위의 경계에있는) 복잡성 평가를 제공하며 이전에 말한 것처럼 연산 ​​수는 입력 매개 변수와 완전히 독립적이므로 Theta(1) 코드입니다.

관련 문제