Algorithm (A)
sum = 0
for i = 1 to n
for j =1 to i
sum = sum+1
我有这个算法,我想知道内部for循环运行了多少次。它是(j + 1)从j = 1到n的总和吗?
答案 0 :(得分:2)
内环执行遵循1 + 2 + 3 + 4 + ... + n = n(n + 1)/ 2的模式,其由O(n 2 )限定。实际执行次数取决于您在说i = 1 to n
时算法的含义。也就是说,它会在i == n
时结束,还是在i
成为n+1
之前执行。
有关此特定系列的更多信息,请参阅Triangular Numbers
答案 1 :(得分:1)
是n *(n + 1)/ 2倍,从1到n的整数之和。如果您有时间,可以在http://betterexplained.com/articles/techniques-for-adding-the-numbers-1-to-100/
阅读更好的解释答案 2 :(得分:0)
Algorithm(A)
sum = 0
for i = 1 to n
for j =1 to i
sum = sum+1
内在:
<强>链接强>
前n个数字的信息和总和here