用于循环复杂性分析

时间:2015-09-07 18:22:01

标签: algorithm time-complexity

有人可以帮我弄清楚我们如何到达(n-1)/ 4 + 1

enter image description here

1 个答案:

答案 0 :(得分:1)

让我们说你有一个从1到10的循环。那么有多少次迭代?

(10 - 1) + 1 = 10 ==> (n-1) + 1

实际上,你总是在第一次迭代中为这样的计算加1,因为如果你从1开始到1,你仍然会进行一次迭代,如果你将迭代器增加1,乘以2或100,则无关紧要。

现在让我们假设我们的迭代器每次增加4而不是1.那么现在有多少次迭代?你从1开始,然后是5开始,然后是9 ...... 3次迭代。我们之前有(10-1),但现在只计算每个第4个数字,所以它变成(10-1)/ 4:

[(10 - 1)/4] + 1 = 3 ==> [(n-1)/4] + 1 (casting to the lower integer)