我在这次复发中陷入困境:
T(n) = T(n − 1) + lg(1 + 1/n), T(1) = 1?
一段时间似乎主方法无法应用于此方法。
答案 0 :(得分:6)
我们有:
lg(1 + 1/n) = lg((n + 1) / n) = lg(n+1) - lg(n)
因此:
T(n) - T(n - 1) = lg(n + 1) - lg(n)
T(n-1) - T(n - 2) = lg(n) - lg(n - 1)
...
T(3) - T(2) = lg(3) - lg(2)
T(2) - T(1) = lg(2) - lg(1)
添加和删除,我们得到:
T(n) - T(1) = lg(n + 1) - lg(1) = lg(n + 1)
或T(n) = 1 + lg(n + 1)
因此T(n) = O(lg(n))
答案 1 :(得分:1)
答案与其他正确答案相同,只是证明不同。
根据给定的重复创建以下所有等式:
对上述方程中的所有RHS和LHS求和得到:
由于Log(a)+ Log(b)= Log(ab),
因此T(n)= O(Log(5n + 5))= O(Log(n))
答案 2 :(得分:1)