考虑以下C代码段:
int IsPrime(n)
{
int i,n;
for(i=2;i<=sqrt(n);i++)
if(n%i == 0)
{printf(“Not Prime\n”); return 0;}
return 1;
}
令T(n)表示程序在输入n上执行for循环的次数。以下内容哪些是对的?
(A)T(n)= O(sqrt(n))和T(n)= (sqrt(n))
(B)T(n)= O(sqrt(n))和T(n)= (1)
(C)T(n)= O(n)和T(n)= (sqrt(n))
(D)以上都不是
(A) A
(B) B
(C) C
(D) D答案: (B)
说明:请参阅https://www.geeksforgeeks.org/data-structures-and-algorithms-set-12/的问题5。
这个问题的测验