请问如何计算执行次数?C语言!

请问如何计算执行次数?C语言!,第1张

分类: 电脑/网络 >>程序设计 >>其他编程语言

问和型粗题描述:

for(i=0i<ni++)

for(j=0j<nj++)

for(k=0k<jk++)

x++

请问这个如何计算x++这条语句执行了多少次租局?

请问这种题有没有什么简便算法?

解析:

没什么简便算法

一般推导一两步,然后数学归纳

这道题和i没太大关系,主要看j,k

j=0 k不会执行

j=1 k=0 执行一次

j=2 k=0 k=1 执行两次唤镇

j=n-1 k=0...k=n-2 执行n-1次

也就是在j,k这两个循环内

一共执行

1+2+3+....+(n-1)

=n(n-1)/2

所以总共执行

n*n(n-1)/2

=n^2(n-1)/2

不是n-2次禅蚂芹,而是n次,程序只执行一次,是循环体中的语句执行了n次。这是一个求时间复杂度的问题,该程序段贺毕耗时主要在循环,跟循环体中语句的执行次数有关,k=k+10*i和i++都执行了n次。所以该程序段的时间复杂度的大O表示物困法为O(n)。

一般而言没有循环等相关情况下,执行次数野兆为1.

语句的乱塌执行次数和程哗脊圆序步数应该不是一个概念。执行次数主要强调的是循环体内的执行次数。而程序步数则从全局来考虑的,一步一步的执行的总和。

希望能采纳。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12539545.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存