Question: Implement a program that runs and gives timings for the two Fibonacci sequence functions provided: long fibr(int n) { // Recursive Fibonacci generator // fibr(46)
Implement a program that runs and gives timings for the two Fibonacci sequence functions provided:
long fibr(int n) { // Recursive Fibonacci generator // fibr(46) is largest value that fits in a long Assert((n > 0) && (n < 47), "Input out of range"); if ((n == 1) || (n == 2)) return 1; // Base cases return fibr(n-1) + fibr(n-2); // Recursion } long fibi(int n) { // Iterative Fibonacci generator // fibi(46) is largest value that fits in a long Assert((n > 0) && (n < 47), "Input out of range"); long past, prev, curr; // Store temporary values past = prev = curr = 1; // initialize for (int i=3; i<=n; i++) { // Compute next value past = prep; prev = curr; curr = past + prev; return curr; } Graph the resulting running times for as many values of n as your computer can handle.
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
