给定函数的写入递归

时间:2018-04-04 02:29:25

标签: recurrence

我正在尝试编写以下函数的运行时间的递归关系:

function G(n):
    if n>0 then:
        x=0
        for i = 1 to n:
            x = x + 1
         G(n-1)
    end if

我想出的是:

 T(n) = 1 if n <= 0
 T(n) = T(n-1) + 1 if n>0

然而,我被告知这是不正确的,我不知道为什么或正确的解决方案是什么。非常感谢任何帮助!

1 个答案:

答案 0 :(得分:0)

T(n) = 1 if n <= 0
T(n) = T(n-1) + O(n) if n>0

而不是O(1),它应该是O(n),因为您从1循环到n

如果你解决了复发,总的复杂性将是O(n 2