我怎样才能找到以N为单位执行x = x + 1的次数?

时间:2013-04-11 20:39:19

标签: time-complexity discrete-mathematics

我也很难找到omega()和theta()(

    x=0;
    for k=1 to n
     for j=1 to n-k
      X=X+1;

3 个答案:

答案 0 :(得分:2)

内环是n-1 + n-2 + n-3 ... + 1 + 0.使用this tutorial计算算术系列的总和以找到解。外环显然只是“n。”

这将是大the。当你除了第一个术语并删除乘数时,大哦将与big-theta相同,例如Theta(2 * log(n)+ 5)变为O(log(n))。在这种情况下,Omega和big-Oh相同,因为最好的情况和最坏的情况是相同的;或者你可以作弊并说大欧米茄是恒定的时间,因为每个函数的大欧米茄都是恒定的时间。

答案 1 :(得分:1)

首先,看看你的界限。 k = 1且k = n。

对于k = 1,执行内部循环(n-1)次。 对于k = n,内部循环执行(0)次。

因此,0 + 1 + ... +(n-1)是算术和=> (n-1)(n)/ 2次。

现在,用几个小值测试它:)

答案 2 :(得分:0)

答案是这样的:  n-1 + n -2 + n -3 + ... = n * n - (1 + 2 + 3 + ... + n)= n ^ 2 - n(n-1)/ 2