算法运行时间

时间:2015-10-23 02:37:50

标签: c++ algorithm code-analysis analysis

运行时间是多少?我得到了O(n ^ 2)

`cin >> n;
 min = 2*n;
 max = (n+3)*10;

for(int i=0; i<1000; i++)
    for(int j =0; j<n; j++)
         for(int k = min; k< max;k++)
            p = f+c+m

`

2 个答案:

答案 0 :(得分:1)

无论外环运行1000次,所以复杂度为O(n^2)。 [内部运行10n+30-2n = 8n+30次,循环变量j运行n次。]

答案 1 :(得分:1)

计算p的次数为:

   1000 * n * (max - min)
=  1000 * n * ((n + 3)*10 - 2*n)
=  1000 * n * (10*n + 30 - 2*n)
=  1000 * n * (8*n + 30)
=  8000 * n^2 + 30000 * n

是的,它是O(n ^ 2)。