是什么决定了递归关系中的常数?

时间:2016-10-10 23:03:19

标签: algorithm recurrence

说我有以下算法:

ArraySum (A, n)
    if n = 1
        return A[0]
    return A[n-1] + ArraySum(A, n-1)

因此递归关系变为

        | c1            n = 1
T(n) =  |
        | T(n-1) + c2   n > 1

我看到一些材料为c1 = 0c2 = 3,但我该如何确定c1c2

1 个答案:

答案 0 :(得分:0)

只要我们谈论时间复杂性,c1和c2都是常数,与n无关。所以他们是O(1)。

所以

        | O(1)            n = 1
T(n) =  |
        | T(n-1) + O(1)   n > 1

关于解决问题。

T(n) = O(n)

希望它清除事情。