求程序段中++x或者x++的频度,时间复杂度、执行次数
创始人
2024-02-02 05:03:02
  1. 以下程序段中"++x"的执行频度?

     频度就是执行次数for  i:=1 	to	n	then;for	j:=1	to	n	then;++x;i=1时	内圈for执行n次...i=n时	内圈执行n次
    

    我的理解:外圈for从1到n,有效循环是n次,外圈每循环一次,内圈循环n次,一共就是n方次

  2. 以下程序段中"++x"的执行频度?

     for  i:=1 	to	n	then;for	j:=1	to	i	then;for	k:=1	to	j	then++x;
    

    我的理解:直接上暴力列举,假设n=8

     	以下都是有效循环次数,不包含for最后不满足条件循环一次i=1时	中间循环 1次	内圈for循环1次i=2时	中间循环 2次	内圈for循环1+2次i=3时	中间循环 3次	内圈for循环1+2+3次i=4时	中间循环 4次	内圈for循环1+2+3+4次规律出来了
    

    我详细说,i=3时,j从1到3,j可以为1,2,3,你可以不看中间for循环了几次,你只看j可以为哪几个值,分别j为1,2,3三种情况时内圈for是怎么在搞。当j为1时,k从1到1,循环一次,j为2时,k从1到2,循环两次,j为3时,k从1到3,循环了3次。所以i=3时,++x执行了1+2+3=6次,这只是一种情况

    i=n时,中间for从1到n,循环n次,这个n次表示内圈有n个数相加,
    因为中间for循环一次内圈就产生一个数,中间for循环了n次,内圈就产生n个数,这个n个数有规律的相加,就是从1+2+3+4+5+6+…+n

    根据上面的规律,1+1+2+1+2+3+1+2+3+4…+1+2+3+…+n这个求和公式n(n+1)(n+2)/6,时间复杂度就是O(n3)

  3. 求下列程序段的时间复杂度?

     for i:=2	to n	thenfor	j:=2	to	i-1	then++x
    

    我的理解:把n看成8时,2到8一共7次,也就是说外圈执行了n-1次

     i=2时	内圈不执行也就是0次i=3时	内圈执行1次i=4	内圈执行2次i=5	内圈执行3次...i=n	内圈从2到n-1是多少次,举个例,n=8,2到8-1是多少次,6次,就是n-2
    

    从1+2+3+4+…+(n-2),求和公式再减掉2,时间复杂度取最高次幂,就是O(n^2)

  4. 以下程序段中"++x"的执行频度?

    x=0
    for  i:=1 	to	n	then;for	j:=i	to	n	then;++x;
    假设n为8
    外圈执行n次,说明结果是n个数相加
    i=1		内圈n次
    i=2		内圈n-1		#举例:2到8有7次嘛
    i=3		内圈n-2
    .......
    i=n-3	内圈4次
    i=n-2	内圈3次
    i=n-1	内圈2次
    i=n		内圈1次
    规律出来就是从1+2+3+4+...+n
    频度用公式就是[n(n+1)]/2
    
  5. 以下程序段中"++x"的执行频度?

     for  i:=n-1 	DOWNTO	1	do;for	j:=1	to	i	do;++x;设n=9,i就从8递减i=8	内圈执行8次i=7	内圈执行7次...i=1	内圈执行1次规律就是从1+2+3+...+n-1=[[n(n+1)]/2]-1时间复杂度取最高次幂就是O(n^2)
    
  6. 以下程序段中,每个语句执行次数?

     for  i:=n 	to	1	then; #语句一x=x+1;	#语句二for	j:=n	to	i	then;	#语三y=y+1;	#语句四
    

    语句一:最外圈的for从n到1,执行n次,还要一次for不满足才能结束,所以是n+1次
    语句二:可以看成外圈for的有效循环次数,也就是执行了n次

     语句三:i=n时		总共执行2次	#1次有效,还要1次才能判断结束i=n-1时	总共执行3次	#2次有效,还要1次才能判断结束i=n-2时	总共执行4次	#3次有效,还要一次才能判断结束....i=2时		总共执行n次	#n-1次有效循环	1次无效循环i=1时		总共执行n+1次	#n次有效循环,1次无效循环规律就是从2+3+4+5+....+n+n+1
    

    下图写复杂了,把末尾的1放最前面,就是求和公式+n,更简单,结果是对的
    请添加图片描述

     语句四:可以看作是不考虑内圈for的无效循环次数从1+2+3+...+n求和公式就出来了
    
  7. 求下列程序段i:=i*2的数量级?

     i:=1;	WHILE	i

    我的理解:i的值为2,4,8,16,32,68…这些数都是以2为底的指数函数 换句话说就是问你2的几次方刚好大于n,logn就是这个意思,数量级是O(logn)

  8. 求下列程序段x=x+1的数量级?

     i=1;	while(i

    我的理解:while循序的数量级是logn,logn通俗说就代表i翻倍了多少次,假设n为64,则log64=6,log64代表while循环了6次。内圈的for执行n次,两个相乘就是x=x+1的数量级,结果为O(nlogn)

  9. 求下列程序段i=i/2的数量级?

     i=n*n;	while(i!=1)i=i/2;
    

    我的理解:i这个数是n*n,i要除2除几次才等于1,例如64除2要除6次才等于1,这里i就等于64,把思路换一个,2要乘2乘多少次才等于64,乘6次才等于64,这个6次怎么表示,是不是log64,log64的意思就是2的几次方等于64,所以答案就是log64,可以表示为logn2,结果就是O(logn2)

  10. 求下列语句s的执行次数?

    for(i=1;i=i;j--)s;
    

    我的理解:假设n=5,外圈就执行了3次,写个通式就是n-2
    i=1 内圈for是5到1 5次
    i=2 内圈for是5到2 4次
    i=3 内圈for是5到3 3次
    实际上i的值从1到n-2都可以,只要比n-1小
    i=n-2时 内圈for从n到n-2,执行了3次。n算1次,n-1算1次,n-2算1次,一共3次,用通式表示就是n-(n-2)+1
    请添加图片描述
    外圈i有几个值,内圈for就执行几次,且for每次执行的次数不一样,把每个for执行的次数相加,就是s的执行次数,看上面求出来的规律式外圈i有3个值,s的执行次数就是3个数相加,那外圈执行次看图,是不是有从1到n-2个数,

    现在回到题目
    i=1		内圈执行n次
    i=2		内圈执行n-1
    i=3		内圈执行n-2
    ....
    i=n-3	内圈执行4次
    i=n-2	内圈执行3次
    规律就是从3+4+5+...+n,一共n-2个数,用求和公式-1-2得出结果为n^2+n-6/2
    
  11. 下面程序段的时间复杂度?

    sum=1;
    for(i=0;sum

    我的理解:
    sum=1时进去循环一次,
    sum=2时进去循环一次,

    sum=n-1时进去循环一次
    sum=n时判断不满足条件,退出循环
    时间复杂度就是O(n)

  12. 下列语句y=y+i*j的执行次数?

    for(i=1;i<=n;i++)if(2*i<=n)for(j=2*i;j<=n;j++)y=y+i*j
    

    穷举法

    if要满足条件,i的值只能为1到n/2
    i=1			j从2到n		执行n-1次	#举例:2到5是4个数
    i=2			j从4到n		执行n-3次
    i=3		 	j从6到n		执行n-5次
    ......
    i=(n-2)/2 	j从n-2到n	执行3次
    i=n/2		j从n到n		执行了1次
    

    规律就是从1+3+5+…+n-1 (首项+末项)*项数/2 结果为n^2/4

  13. 分析循环语句的执行次数?

    i=0;s=0;n=100;
    {i++;s=s+10*i
    }while(s

相关内容

热门资讯

应用未安装解决办法 平板应用未... ---IT小技术,每天Get一个小技能!一、前言描述苹果IPad2居然不能安装怎么办?与此IPad不...
长白山自助游攻略 吉林长白山游... 昨天介绍了西坡的景点详细请看链接:一个人的旅行,据说能看到长白山天池全凭运气,您的运气如何?今日介绍...
脚上的穴位图 脚面经络图对应的... 人体穴位作用图解大全更清晰直观的标注了各个人体穴位的作用,包括头部穴位图、胸部穴位图、背部穴位图、胳...
猫咪吃了塑料袋怎么办 猫咪误食... 你知道吗?塑料袋放久了会长猫哦!要说猫咪对塑料袋的喜爱程度完完全全可以媲美纸箱家里只要一有塑料袋的响...
世界上最漂亮的人 世界上最漂亮... 此前在某网上,选出了全球265万颜值姣好的女性。从这些数量庞大的女性群体中,人们投票选出了心目中最美...
demo什么意思 demo版本... 618快到了,各位的小金库大概也在准备开闸放水了吧。没有小金库的,也该向老婆撒娇卖萌服个软了,一切只...
埃菲尔铁塔在哪 中国仿建埃菲尔... 2019年4月26日,广西南宁市,街头惊现一座巨型山寨版埃菲尔铁塔,高约20米,白色塔身,造型逼真,...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
应用未安装解决办法 平板应用未... ---IT小技术,每天Get一个小技能!一、前言描述苹果IPad2居然不能安装怎么办?与此IPad不...
脚上的穴位图 脚面经络图对应的... 人体穴位作用图解大全更清晰直观的标注了各个人体穴位的作用,包括头部穴位图、胸部穴位图、背部穴位图、胳...
长白山自助游攻略 吉林长白山游... 昨天介绍了西坡的景点详细请看链接:一个人的旅行,据说能看到长白山天池全凭运气,您的运气如何?今日介绍...
猫咪吃了塑料袋怎么办 猫咪误食... 你知道吗?塑料袋放久了会长猫哦!要说猫咪对塑料袋的喜爱程度完完全全可以媲美纸箱家里只要一有塑料袋的响...
demo什么意思 demo版本... 618快到了,各位的小金库大概也在准备开闸放水了吧。没有小金库的,也该向老婆撒娇卖萌服个软了,一切只...