我将简化问题并将其放入(我自己的)基本伪代码中:
function f1(A, n)
// A is an array of n integers
i = n - 5
while(i >= 10)
(some random constant work that's not important)
f1(A, i)
i = i - 2
首先,我对建立重复关系非常迷失。在课堂上很少有我们在循环中介绍过递归调用算法的,而且总是在一个简单的for循环中,您可以立即看到迭代次数。 while循环确实让我不满意,还有不规则的递归调用(在我的课堂上,我所看到的只是(n / 2),(n-3)等)。如果有人也可以帮助我解决递归关系,那将是惊人的。我很确定这是指数的,因此下限就足够了。非常感谢!