2. Code a top-down recursive solution for the classic Fibonacci Sequence (starting from 0) using dynamic programming with heap memory for storage. fibonacci top-down solution (memoization) 0(n) time complexity Recursive Function step 1: if n < 2 return the data at position n step 2: else, if a solution for n has not been stored in a[n] recurse fibo(n-1) + fibo (n-2) and store the answer into a[n] step 3: return the data at position n in the array */ int fibonacci(int n, long long *a){ if(n == 0){ return 0; } if(n == 1){ return 1; } else(n=!-1) return fibonacci(n-1) + fibonacci(n-2); } int main (){ // step 1: create a dynamic array of 50 integers. // step 2: populate the first two indicies of the array with 0 and 1 // step 3: populate the rest of the array with the value -1 // step 4: call the fibonacci sequence for various values of n int *a = new int[50]{0, 1}; cout <« endl; cout << "fib(0): " << fibonacci(0) < endl; cout << "fib(6): " << fibonacci(6) << endl; " < fibonacci(8) << endl; <« fibonacci(15) << endl; cout << "fib(20): " << fibonacci(20) << endl; cout << "fib(37): " << fibonacci(37) << endl; cout << "fib(8): cout << "fib(15): cout <« endl; delete [] a; return 0; }
2. Code a top-down recursive solution for the classic Fibonacci Sequence (starting from 0) using dynamic programming with heap memory for storage. fibonacci top-down solution (memoization) 0(n) time complexity Recursive Function step 1: if n < 2 return the data at position n step 2: else, if a solution for n has not been stored in a[n] recurse fibo(n-1) + fibo (n-2) and store the answer into a[n] step 3: return the data at position n in the array */ int fibonacci(int n, long long *a){ if(n == 0){ return 0; } if(n == 1){ return 1; } else(n=!-1) return fibonacci(n-1) + fibonacci(n-2); } int main (){ // step 1: create a dynamic array of 50 integers. // step 2: populate the first two indicies of the array with 0 and 1 // step 3: populate the rest of the array with the value -1 // step 4: call the fibonacci sequence for various values of n int *a = new int[50]{0, 1}; cout <« endl; cout << "fib(0): " << fibonacci(0) < endl; cout << "fib(6): " << fibonacci(6) << endl; " < fibonacci(8) << endl; <« fibonacci(15) << endl; cout << "fib(20): " << fibonacci(20) << endl; cout << "fib(37): " << fibonacci(37) << endl; cout << "fib(8): cout << "fib(15): cout <« endl; delete [] a; return 0; }
Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
Related questions
Question
Need help completing the rest of this code

Transcribed Image Text:2. Code a top-down recursive solution for the classic Fibonacci Sequence
(starting from 0) using dynamic programming with heap memory for storage.
![fibonacci top-down solution (memoization)
0(n) time complexity
Recursive Function
step 1: if n < 2 return the data at position n
step 2: else, if a solution for n has not been stored in a[n]
recurse fibo(n-1) + fibo (n-2) and store the answer into a[n]
step 3: return the data at position n in the array
*/
int fibonacci(int n, long long *a){
if(n == 0){
return 0;
}
if(n == 1){
return 1;
}
else(n=!-1)
return fibonacci(n-1) + fibonacci(n-2);
}
int main (){
// step 1: create a dynamic array of 50 integers.
// step 2: populate the first two indicies of the array with 0 and 1
// step 3: populate the rest of the array with the value -1
// step 4: call the fibonacci sequence for various values of n
int *a = new int[50]{0, 1};
cout <« endl;
cout << "fib(0): " << fibonacci(0) < endl;
cout << "fib(6): " << fibonacci(6) << endl;
" < fibonacci(8) << endl;
<« fibonacci(15) << endl;
cout << "fib(20): " << fibonacci(20) << endl;
cout << "fib(37): " << fibonacci(37) << endl;
cout << "fib(8):
cout << "fib(15):
cout <« endl;
delete [] a;
return 0;
}](/v2/_next/image?url=https%3A%2F%2Fcontent.bartleby.com%2Fqna-images%2Fquestion%2Fc45072c9-820f-4d06-bb43-63ea77dc776c%2Ffa49955e-b109-4bd2-820e-d4a9c6f096d4%2Fjqplwyn.png&w=3840&q=75)
Transcribed Image Text:fibonacci top-down solution (memoization)
0(n) time complexity
Recursive Function
step 1: if n < 2 return the data at position n
step 2: else, if a solution for n has not been stored in a[n]
recurse fibo(n-1) + fibo (n-2) and store the answer into a[n]
step 3: return the data at position n in the array
*/
int fibonacci(int n, long long *a){
if(n == 0){
return 0;
}
if(n == 1){
return 1;
}
else(n=!-1)
return fibonacci(n-1) + fibonacci(n-2);
}
int main (){
// step 1: create a dynamic array of 50 integers.
// step 2: populate the first two indicies of the array with 0 and 1
// step 3: populate the rest of the array with the value -1
// step 4: call the fibonacci sequence for various values of n
int *a = new int[50]{0, 1};
cout <« endl;
cout << "fib(0): " << fibonacci(0) < endl;
cout << "fib(6): " << fibonacci(6) << endl;
" < fibonacci(8) << endl;
<« fibonacci(15) << endl;
cout << "fib(20): " << fibonacci(20) << endl;
cout << "fib(37): " << fibonacci(37) << endl;
cout << "fib(8):
cout << "fib(15):
cout <« endl;
delete [] a;
return 0;
}
Expert Solution

This question has been solved!
Explore an expertly crafted, step-by-step solution for a thorough understanding of key concepts.
This is a popular solution!
Trending now
This is a popular solution!
Step by step
Solved in 3 steps with 1 images

Knowledge Booster
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.Recommended textbooks for you

Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education

Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON

Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON

Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education

Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON

Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON

C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON

Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning

Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education