For循环里面嵌套有if语句如何求时间复杂度,比如if(){},是看()里语句的执行次数还是看{}里语句的执行

次数。... 次数。 展开
 我来答
小白聊电子科技
高粉答主

2020-05-15 · 专注电子数码问题解答
小白聊电子科技
采纳数:775 获赞数:75479

向TA提问 私信TA
展开全部

1、打开编译器,首先输入头文件,写好Main函数,定义好需要用到的变量,如下图所示。

2、然后写下第一个For循环,也是外围的for循环,为了便于观察结果,这里使用Printf函数在每次循环时,打印变量的值,如下图所示。

3、在外围For循环内部再写下一个for循环,其中的变量可以独立变化,也可以与外围for循环中的变量建立关系,如下图所示。

4、调试并运行程序,如下图所示。

5、此时,通过观察程序运行结果可以看到,外围for循环每进行一次,内部嵌套的for循环就要完整进行一轮,如下图所示。

自我编程
2018-05-27 · 科技优质答主
自我编程
采纳数:1481 获赞数:4283

向TA提问 私信TA
展开全部
循环嵌套if
if(){},括号里是逻辑表达式,只有逻辑表达式成立的时候才会执行{}中的代码。
所以执行次数不一定一样。如果循环过程中()中逻辑表达式一直成立,两者都执行了一样的循环次数。如果循环执行时逻辑表达式不成立,{ }肯定不会执行。
所以,循环次数看()执行的次数。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友09ec42d
2012-06-20
知道答主
回答量:11
采纳率:0%
帮助的人:14.8万
展开全部
可定看的是{}里面的语句哈,你想想,if()中,括号中的句子是个判断句哈,条件成立就执行{}中的语句.我举个例子给你哦~
if(i!=0)
{while(i<n)
i=i+1;
}
你看,如果看(),复杂度是1,如果看{},复杂度是n,那么正确的当然是n了,明白了吧,希望我讲的清楚哦,你没看懂也可以继续提问哦~
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
销43
推荐于2018-05-30 · TA获得超过6887个赞
知道小有建树答主
回答量:484
采纳率:80%
帮助的人:52万
展开全部
都得看,只要有运算的地方,都得算上
比如for(i=0;i<N;i++)if(strlen(s[i])==10)puts(s[i]);这样的
strlen一次就是O(len),循环N次
其实复杂度就是O(∑leni)所有字符串长度总和
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wsx1048
2012-06-17 · 超过12用户采纳过TA的回答
知道答主
回答量:92
采纳率:0%
帮助的人:39.6万
展开全部
比如这么一种形式,就是按数字顺序进行的。
for (1;2;5)
{
if (3
{
4
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式