单选题
设n是描述问题规模的非负整数,下面程序片段的时间复杂度是______。
void fun(int n)
int i, k;
for (i=1; i<=n; i++)
for (j=1; j<=n; j++)
k=1;
while(k<=n)k=5*k;
A.O(n2log2n) B.O(nlog5n) C.O(n2log5n) D.O(n3)
【正确答案】
C
【答案解析】[解析] 基本运算语句是k=5*k,设其执行时间为T(n)。
对于j每循环一次,该语句的执行次数为m,有:5
m≤n,即m≤log
5n。所以:
