标签: algorithm asymptotic-complexity divide-and-conquer
我正在学习Coursera中的分而治之算法,我遇到了这种递归关系:
T(n) = T(n-√n)+1
答案是:
O(√n)
我已经学习了主方法和递归树分析,但我不知道如何分析这种递归关系。 谢谢你的帮助。
答案 0 :(得分:2)
我们可以通过使用二项式展开来获得此阶段的上限:
请注意,RHS小于大n的LHS,这意味着每次我们应用近似值时,我们都会将参数中较小的值减去T,因此结果将是上限。
n
T
继续m次迭代:
m
假设T(n)终止于n = 0(或某些常数,并不重要)
T(n)
n = 0
因此复杂性为O(m) = O(√n)。
O(m) = O(√n)
编辑:上面的= 4√n错了,抱歉 - 应该是(2+5/√2)√n
= 4√n
(2+5/√2)√n