计数/计算for循环中for循环的原始操作

时间:2014-10-23 16:04:59

标签: algorithm loops for-loop primitive operations

我有算法: 输入:X,大小为n的1-D数值数组

Let A = an empty 1-D numerical array of size n
For i = 0 to n-1
    Let s = X[0]
    For j = 1 to i
       Let s = s + X[j]
    End For
    Let A[i] = s /(i+1)
End For

输出:数字的n元素数组A,使得A [i]         元素X [0],X [1],...,X [i]

的平均值

我正在尝试编写T(n)公式并计算它,如何在for循环i = 0到n-1内写入for循环J = 1到i。

什么是T(n)公式?

T(n)是算法执行的时间。 t(n)将用于计算big-O(O(n))。所以此刻我有T(n)= 2n + 2(n-1)+ 5i(n-1)+6(n-1)+1。因为我计算了算法中的写入,读取和操作。我不知道公式是否写入。

1 个答案:

答案 0 :(得分:0)

我不清楚你的问题,但仍然

如何在for循环中将for循环J = 1写入i = 0到n-1?

你编写循环的方式还可以,它会做你想要的......

什么是T(n)公式?

您可以注意到该算法将使第二个循环运行

0

i=0次,

1i=1

2时间i=2, 。 。 。 等等..

这将一直持续到n-1,因此复杂性达到0 + 1 + 2 + .... + n-1的总和n*(n-1)/2。这是asymtotically O(n^2)