I have the following recurrence:↵
↵
Let's say that I have 1 array f and 1 function g. ↵
A function call to g takes O(1) time.↵
I just want to compute the values in the f array using the recurrence given below:↵
↵
f[n] = summation(f[n — i]*g(i, n)) for i in [1, 2, 3, 4, ..., n — 1]↵
↵
Base Case: f(0) = 1.↵
↵
If we use the above recurrence, it will take O(n^2) time. ↵
Any way to reduce it to O(n*log(n)) ?↵
↵
Thanks in advance.
↵
Let's say that I have 1 array f and 1 function g. ↵
A function call to g takes O(1) time.↵
I just want to compute the values in the f array using the recurrence given below:↵
↵
f[n] = summation(f[n — i]*g(i, n)) for i in [1, 2, 3, 4, ..., n
↵
Base Case: f(0) = 1.↵
↵
If we use the above recurrence, it will take O(n^2) time. ↵
Any way to reduce it to O(n*log(n)) ?↵
↵
Thanks in advance.