99问答网
所有问题
C语言,下面程序段的时间复杂度是多少?
如题所述
举报该问题
推荐答案 2020-02-28
是O(log3(n))。
分析:
第1次循环进入后i=3(3^1),
第2次循环进入后i=9(3^2),
...
假设第k次循环是最后一次循环,则进入后i=3^k,同时有3^k等于n,所以k=log3(n),
时间复杂度
为O(log3(n))(即以3为底,n的
对数
)。
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://99.wendadaohang.com/zd/WveBvzeXevvXWXtzvjj.html
其他回答
第1个回答 2020-02-28
此题运行时间取决于n的大小,计作:T(n) = n
时间复杂度为:O(n)
定义:
若存在函数 f(n),使得当n趋近于无穷大时,T(n)/ f(n)的极限值为不等于零的常数,则称 f(n)是T(n)的同数量级函数。
记作 T(n)= O(f(n)),称O(f(n)) 为算法的渐进时间复杂度,简称时间复杂度。
本回答被网友采纳
相似回答
C语言
题目:
下面程序段的时间复杂度是?
答:
可以简化:√
n
.
下面程序段的时间复杂度是
?
i=1; while(i<=n) i=i*2
答:
根据规律发现,循环次数由log2n决定,
所以复杂度是O(log2n)
。
10、
下面程序段的时间复杂度是
()。 i=s=0; while(s<n){ i++; s+=i...
答:
所以
复杂度为
O(根号n)
下面程序段的时间复杂度为
___。(n>1)
答:
i=1; while(i<=n) i=i*2
的时间复杂度
O(log2n)。整段代码语句,中循环体只有一个while(i<=n),执行的次数是:i = 1,i = 1*2=2,判断2是否小于等于n,是则继续循环,否则跳出循环。i =2,i = 2*...
分析
下列程序段的时间复杂度是
___。 i=1: while(i<=n) i=i*2;_百度...
答:
【答案】:
C
循环体里面是i=i*2,即每循环一次i值增加一倍,所以执行次数与n之间是以2为底的对数关系,故
时间复杂度为
O(log2n)。
下面的程序段时间复杂度为
()。for(i=1;in;i++)for(j=1;jn;j++)x=x+...
答:
下面的程序段时间复杂度为
()。for(i=1;in;i++)for(j=1;jn;j++)x=x+1;A.O(2n)B.O(n)
C
.O(n^2)D.O(log2n)正确答案:O(n^2)
下面程序段的时间复杂度为
( A)。 i=s=0; while(s<n){
答:
1)while(s<n){ //
时间复杂度是
O(n)i++; //时间复杂度是O(n)s+=i; //时间复杂度是O(n)}//累计时间复杂度是O(1+n+n+n),即O(n)如有疑问请追问,如您满意请采纳,谢谢 ...
以下程序段的时间复杂度是多少
,为什么?
答:
可以使用迭代法来求解。假设求n时
复杂度为
T(n)。可见算法的递归方程为: T(n) = T(n - 1) + O(1); //这是因为求fact(n),需要先计算出fact(n-1) (复杂度为T(n-1)),再与n相乘(这部计算复杂度为O...
给出
下面
几个
C语言程序段的时间复杂度
。要求写出计算过程 ,谢谢了,在线...
答:
解出k即可;对于第二个,设执行次数为k,则最终有k^2=n;解出k;对于第三个,if语句执行n/3次,单独看里面的for执行(n-n/3)次,结合if语句,则最终有 (n-n/3)*n/3
,时间复杂度
一眼便知 ...
大家正在搜
下面程序的时间复杂度是
以下程序段的时间复杂度为
下列程序的时间复杂度为
程序段时间复杂度
程序的时间复杂度怎么计算
直接选择排序的时间复杂度
算法的时间复杂度
时间复杂度的简单例题
时间复杂度计算的例题
相关问题
C语言题目:下面程序段的时间复杂度是多少?非常感谢
C语言题目:下面程序段的时间复杂度是?
给出下面几个C语言程序段的时间复杂度。要求写出计算过程 ,谢...
下面程序段的时间复杂度为多少?
下面程序段的时间复杂度是 ? i=1; while(i<=n...
下面程序段的时间复杂度是 ( )。
下面程序段的时间复杂度为( A)。 i=s=0; while...
下面程序段的时间复杂度是?