说我有以下算法:
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 = 0
和c2 = 3
,但我该如何确定c1
和c2
?
答案 0 :(得分:0)
只要我们谈论时间复杂性,c1和c2都是常数,与n无关。所以他们是O(1)。
所以
| O(1) n = 1
T(n) = |
| T(n-1) + O(1) n > 1
关于解决问题。
T(n) = O(n)
希望它清除事情。