早教吧作业答案频道 -->数学-->
设n为正整数,利用大o记号将下列程序段的执行时间表示为n的函数(1)i=1""-k=100.while(i<n)k=k+1i=i+10(2)i=1j=0while(i+j<=n)if(i>j)j++elsei++(3
题目详情
设n为正整数,利用大o记号将下列程序段的执行时间表示为n的函数
(1)i=1""-k=100.while(i<n) k=k+1 i=i+10 (2)i=1 j=0 while(i+j<=n) if(i>j)j++ else i++ (3)for (i=1,i<=n --1,i ++ k) k =i for(j =i +1,jr [j +1]) k =j t =R [k] R[K ]=R [I],R [i]=t .
(1)i=1""-k=100.while(i<n) k=k+1 i=i+10 (2)i=1 j=0 while(i+j<=n) if(i>j)j++ else i++ (3)for (i=1,i<=n --1,i ++ k) k =i for(j =i +1,jr [j +1]) k =j t =R [k] R[K ]=R [I],R [i]=t .
▼优质解答
答案和解析
(1) i=1; k=0
while(i { k=k+10*i;i++;
} ◆ T(n)=n-1
∴ T(n)=O(n)
◇ 这个函数是按线性阶递增的
(2) i=0; k=0;
do{
k=k+10*i; i++;
}
while(i ◆ T(n)=n
∴ T(n)=O(n)
◇ 这也是线性阶递增的
(3) i=1; j=0;
while(i+j1
while (x>=(y+1)*(y+1))
y++; ◆ T(n)=n1/2
∴ T(n)=O(n1/2)
◇ 最坏的情况是y=0,那么循环的次数是n1/2次,这是一个按平方根阶递增的函数.
(5) x=91; y=100;
while(y>0)
if(x>100)
{x=x-10;y--;}
else x++; ◆ T(n)=O(1)
◇ 这个程序看起来有点吓人,总共循环运行了1000次,但是我们看到n没有? 没.这段程序的运行是和n无关的,就算它再循环一万年,我们也不管他,只是一个常数阶的函数.
while(i { k=k+10*i;i++;
} ◆ T(n)=n-1
∴ T(n)=O(n)
◇ 这个函数是按线性阶递增的
(2) i=0; k=0;
do{
k=k+10*i; i++;
}
while(i ◆ T(n)=n
∴ T(n)=O(n)
◇ 这也是线性阶递增的
(3) i=1; j=0;
while(i+j1
while (x>=(y+1)*(y+1))
y++; ◆ T(n)=n1/2
∴ T(n)=O(n1/2)
◇ 最坏的情况是y=0,那么循环的次数是n1/2次,这是一个按平方根阶递增的函数.
(5) x=91; y=100;
while(y>0)
if(x>100)
{x=x-10;y--;}
else x++; ◆ T(n)=O(1)
◇ 这个程序看起来有点吓人,总共循环运行了1000次,但是我们看到n没有? 没.这段程序的运行是和n无关的,就算它再循环一万年,我们也不管他,只是一个常数阶的函数.
看了设n为正整数,利用大o记号将下...的网友还看了以下:
已知下列一列数,½,1/3,1/10,1/15,1/26,1/35……按此规律排列,第n个数为() 2020-05-12 …
(2012•朝阳区二模)在如图所示的数表中,第i行第j列的数记为ai,j,且满足a1,j=2j−1 2020-05-14 …
求1=2的数学公式(记有一步很巧妙的除数假设X=1,Y=2求X=Y的推算公式问题是这样的:求证1= 2020-06-10 …
观察下面由※组成的图案和算式,1+3=4=2²,1+3+5=9=3²,1+3+5+7=16=4², 2020-06-27 …
解下列方程组:(1)1−0.3(y−2)=x+15y−14=4x+920−1(2)3x−2(2y+ 2020-07-09 …
(2013•南通二模)设无穷数列{an}满足:∀n∈N*,an<an+1,an∈N*.记bn=aa 2020-08-02 …
用带入消元法解下列方程1.3x+2y=5,y=12.x+3y=﹣1,3x﹣2y=83.5x﹣2y﹣ 2020-08-03 …
在数学中,为了书写简便,我们记nk=1k=1+2+3+…+(n-1)+n,nk=1(x+k)=(x+ 2020-10-31 …
(2007•茂名)在数学中,为了简便,记:nk=1k=1+2+3+…+(n-1)+n,1!=1,2! 2020-11-12 …
快乐的你一定有过很多得意之事,请用英语写一篇约120个词的短文记述一件你自己认为得意的事情。要求如下 2020-12-06 …