2个具有不同时间复杂度的无限墙门的相同算法

时间:2017-01-02 11:26:22

标签: algorithm

此处给出了首次复杂性分析

Door in an infinite wall algorithm

我的问题是,我们可以用不同的方式重写完全相同的算法并将其变为O(n^2),但为什么呢?

如果n=2^k,那么在最坏的情况下,我们必须通过移动与上述算法完全相同的方式来执行2^(2k+1)步骤。在某些代数变为8*(2^(k-1))^2之后,该代数小于8*(n^2)。因此O(n^2)

同一算法如何具有两种不同的时间复杂度?

1 个答案:

答案 0 :(得分:0)

您的错误出现在此声明中:

  

......我们必须走2^(2k+1)

事实并非如此。你似乎错误地复制了这个公式:

2 x 2^(k-1)

referenced question or answer中没有任何地方 k 的系数不同于1,并且没有理由为什么需要为它引入2来获得 2k