www问答网
所有问题
当前搜索:
时间复杂度为根号n
...1;s=0;while(s<n){i=i+2;s=s++i;}为什么它的
时间复杂度是根号n
...
答:
若s=s+i 你会发现 s0=0+1;s1=1+3;s2=4+5;s3=9+7 发现s0=1;s1=4;s2=9;s3=16 为0,1,2,3,4的平方 当n->无穷的时候 while至多运行根号n的下限次,所以
复杂度是根号n
为什么这道题的
时间复杂度是根号n
呢
答:
如果你把while(y*y<=
n
)改成while(y<=sqrt(n));sqrt(n)表示求n的算术平方根就明白了
为什么这个函数
时间复杂度是
√
n
?
答:
也就是说i要由1一直算到n, 这就是一个On的
时间复杂度
并不是 Ologn
数据结构
时间复杂度
视频时间 09:56
为什么这道题的
时间复杂度是根号n
呢
答:
在循环内y的变化为:0 1 2 3…x x为y++这条语句执行的次数 然后当y*y>
n
时跳出循环 即x^2>n 然后解除x即可
算法
时间复杂度
比较:
根号n
与logn相比哪个更优?优多少?试根据下图猜想其...
答:
必须
是
logn更优。你看看他们的反函数,
根号n
的反函数是n^2,logn的反函数是2^n。后者增长远快于前者,所以logn的增长远慢于根号n。举个栗子:log100万=20,根号100万 = 1000,差距已经很大了。
数据结构 语句频度和
时间
频度怎么算
答:
while(i<=n&&j<=n){#i=i+1;j+j+i;} 这个j+j+i;就是j=j+i;吧 这个可以假设这条语句执行了k次,此时i=k+1;j=1+k(k+3)/2;循环结束条件是:i<=n&&j<=n;所以可以知道:把条件代进去可得:k=(-3+sqrt(8n+1))/2;sqrt代表开根号;所以语句频度就是k;
时间复杂度
就
是根号n
...
图中3道java题的
时间复杂度是
多少?
答:
第一道题,那循环显然是执行n次的,所以
时间复杂度是
o(n)。这道题假设n存在,循环次数为k,那么s=1+2+3+……+k=k(k+1)/2<n,k~n^(1/2),所以时间复杂度是o(
根号
下n)。第三题判断n是不是素数,最差的情况循环是从2到根号下n,所以时间复杂度是o(根号下n)。
程序
时间复杂度
计算 i=-1; s=0; while(s<
n
) { i=i+
答:
时间复杂度为
O(n^0.5),即
根号n
的数量级。该程序求解的是:s=1+3+5+7+...+(2k+1),且使得s-(2k+1)<n≤s。而s=(1+(2k+1))*(k+1)/2=(k+1)^2,k+1则为上述等差数列的项数,也是你的程序中while循环执行的趟数。求出k<根号n≤(k+1),因此循环执行根号n趟。则T(n)=2...
程序
时间复杂度
计算 i=-1; s=0; while(s<
n
) { i=i+
答:
时间复杂度为
O(n^0.5),即
根号n
的数量级。该程序求解的是:s=1+3+5+7+...+(2k+1),且使得s-(2k+1)<n≤s。而s=(1+(2k+1))*(k+1)/2=(k+1)^2,k+1则为上述等差数列的项数,也是你的程序中while循环执行的趟数。求出k<根号n≤(k+1),因此循环执行根号n趟。则T(n)=2...
1
2
3
4
5
6
7
8
9
10
涓嬩竴椤
灏鹃〉
其他人还搜
log2n和根号n时间复杂度
logn和根号n哪个复杂度高
根号n和log2n谁增长得快
冒泡排序平均时间复杂度怎么算
时间复杂度有根号n吗
时间复杂度为nlog2n
时间复杂度logn与n
根号n的复杂度
2的n次方时间复杂度