Question: In this assignment, you have to implement a Dynamic Programming solution to find the n_th term's value of the following recurrence relation. Recurrence relation will

In this assignment, you have to implement a Dynamic Programming solution to find the n_th term's value of the following recurrence relation. Recurrence relation will depend on YOUR ROLL NUMBER Your recurrence relation will use the first four digits of your roll number. Suppose your roll number is 181014036. Eg. f(n) = 1*f(n-1) + 8*f(n-2) + 1*f(n-3) + 0*f(n-4) Base cases will be the reversed four digits of roll number. Eg. f(0) = 6, f(1) = 3, f(2)= 0, f(3) = 4 You will be provided with a sample code. Edit the functions of the sample code file. 1. Implement a Top-Down (Recursion + Memoization/Caching) solution [You can use a Map/Array/other data structure for caching purpose] ** Complete the recursive TopDown(int n) function 2. Implement Bottom-Up (Tabulation) method. Use Array for tabulation. ** Complete the bottomUp(int n) function 3. Implement a Space-Optimized Bottom-Up method. ** Complete the bottomUpOptimizedSpace(int n) function 4. Answer the following questions, at the end of your code file. a. What is the time and space complexity of the recursive TopDown(n) code ? b. What is the time and space complexity of the bottomUp(n) code? c. What is the time and space complexity of the bottom UpOptimizedSpace(n) code? 5. BONUS: Edit your functions so that your code can be runnable for recurrence relation, when used with any roll number
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
