2012-10-26 4 views
-4

다음 코드 조각의 복잡성은 무엇입니까 ??다음 코드의 복잡성은 무엇입니까?

for (int i = 1; i * i <= n; i++) 
{ 
    if (n%i == 0) 
    //do anything 
} 
+4

자신이 맞습니까? 내 말은, 우리는 당신을 위해 일하는 것이 아니라 돕기 위해 여기에 온 것입니다. – Jasper

+1

"할 일"*에 따라 달라집니다 *. O (1) 루프, O (n^.5) 루프 또는 기타 복잡성을 만드는 "무언가"를 작성할 수 있습니다. –

+2

-1 : 다른 사람들이 당신을 위해 그것을 해결하기 위해 제멋대로 움직이는 것처럼 숙제 문제를 푸는 데 많은 노력을 기울이면 지금까지해야 할 일이 있습니다. – WhozCraig

답변

7

루프는 √ N 번 실행하고 조건이 때마다 in — 후자의 요인이 아닌 사소한 조건 및주의 깊게 분석 할 필요가 충족된다. 그것은 n의 소수 분해에 달려 있습니다. 예를 들어, n이 소수 인 경우 조건은 i == 1에 대해 한 번만 true가되고 다시는 발생하지 않습니다.

관련 문제