0
我必须找到以下函数的递归方程的递归方程:查找函数
static int f(int[] a, int inf, int sup) {
if(sup == inf)
return a[inf];
if(sup == inf+1)
return a[inf] + a[sup];
else {
int thrd = (sup - inf + 1)/3;
int i = inf + thrd;
int j = i + thrd;
int sum = 0;
for(int k = i; k < j; k++)
sum += a[k];
return f(a, inf, i-1) + f(a, j, sup) + sum;
}
}
基础案例是T(1)= 1(从if(sup == inf)
到sum += a[k];
)。 而是递归的情况是什么?我要说T(N)= 2T(N/3)+ 1,但我不知道..
感谢
感谢您的回复。 T(n)的解决方案是什么?我已经考虑过这个问题:** 2T(n/3)+从(i = 0)到i =(k-1)的总和从i = 1到i =(k-1) [((2^i)* n)/ 3^i] **但它不是解决方案.. – user3808470