【问题标题】:Computing for the closed form of a recurrence relation: Fractions计算递推关系的封闭形式:分数
【发布时间】:2015-04-14 10:21:43
【问题描述】:

使用给定的:T(1) = 1

你将如何计算 T(n) = T(n/4) + 1 的封闭形式?

我会这样回答:

T(n) = T(n/4) + 1
T(n) = T(n/8) + 1 + 1
T(n) = T(n/16) + 1 + 1 + 1

等等。这是处理这个方程的正确方法吗?我是否遗漏了一些重要的关键步骤?

【问题讨论】:

    标签: algorithm recurrence


    【解决方案1】:

    我们有 T(n)=T(n/4)+1

    现在找到 T(n/4),即 T(n/4)=T(n/(4^2))+1
    因此,第二项将是 T(n)=T(n/(4^2))+2
    类似地,第 k 项将是 T(n)=T(n/(4^k))+k
    现在将 n=4^k 放入上述方程的 RHS 中,因此我们得到 T(n)=T(1)+k
    => T(n)=1+k
    但 n = 4^k
    => k = log n 其中 log 的底数为 4。
    因此 T(n)= (1+log n );其中对数的基数为 4。

    【讨论】:

      【解决方案2】:

      在这种情况下,我认为反过来更容易:从T(1) 向上。我们有:

      T(1) = 1
      T(4) = T(4/4) + 1 = T(1) + 1 = 2
      T(16) = T(16/4) + 1 = T(4) + 1 = 3
      T(64) = T(64/4) + 1 = T(16) + 1 = 4
      ...
      => T(4^k) = k + 1
      

      你能找出不是4 的力量的论点的答案吗?除法是我假设的整数除法。

      【讨论】:

        猜你喜欢
        • 2015-11-27
        • 1970-01-01
        • 1970-01-01
        • 2020-04-09
        • 1970-01-01
        • 2016-07-22
        • 1970-01-01
        • 2023-02-04
        • 2010-11-23
        相关资源
        最近更新 更多