递归T(n)= T(n - log(n))+ 1

时间:2017-11-18 01:00:27

标签: algorithm big-o recurrence

你如何找到这种递归关系的紧张?这是一个问题,我们希望证明m / log(m)是紧的渐近界。我尝试使用感应,但它似乎无处可去。要么我缺少对数规则,要么还有更多东西。

1 个答案:

答案 0 :(得分:1)

诱导。假设所有T(k) <= C k / log k的某些C都有k < n

重新显示重复(n/2) / log(n/2)次,将log(.)替换为log(n/2)(我们利用T(n)log(n)都是单调函数的事实。也就是说,

T(n) <= T(n - log(n/2) * (n/2) / log(n/2)) + (n/2) / log(n/2)

T(n) <= T(n/2) + (n/2) / log(n/2)

T(n) <= C (n/2) / log(n/2) + (n/2) / log(n/2)

现在你必须证明右边的表达是由C n / log n限制的。算术和发现这样的C留作练习。