Analysis of Algorithms
3. Analysis of Algorithms
Consider the following code for doing insertion sort
#include <iostream> #include <iomanip> #include <string> using namespace std; int count = 0; void insertionSort (int a[], int n) { int i, j, copy; count++; // for the initialization of i in the for loop for (i = 0; count++, i < n-1; count++, i++) { j = i+1; count++; copy = a[j]; count++; while (j > 0 && copy < a[j-1] ) { count++; // for the test to get into the body of the loop a[j] = a[j-1]; count++; j--; count++; } a[j] = copy; count++; } } void print(int a[], int n) { int i; cout << "sorted in " << count << "steps: "; for (i = 0; i < n; i++) cout << a[i] << ' '; cout << endl; } int main () { int a[] = {34, 3343, 334, 644, 33, 31, 112, 119}; int n = sizeof(a) / sizeof(int); insertionSort (a,n); print (a,n); return 0; }
For the insertionSort subroutine only, do a full summation analysis similar to the one that is done for selection sort, given in the notes to determine the number of steps the sorting algorithm takes. You should end up with a formula in terms of n.
Now answer the following questions:
- Plug the size of the the array into your formula and compute the number of steps the algorithm would be predicted to take. Compare this with the actual count printed by the algorithm.
- Are they the same?
- If not, why not?
- What would be the slowest time the algorithm can run (in terms of n)? What input would cause this slowest time.
- What would be the fastest time your algorithm could run (in terms of n)? For what input would this fastest time be achieved?
11 years ago
30
Answer(1)![blurred-text]()
![]()
Purchase the answer to view it

NOT RATED
- analyzing_running_time_of_insertion_sort.pdf
Bids(1)
other Questions(10)
- As an intern software developer for a retail bank, you have been tasked with developing use cases to support the ATM service
- FOR A-PLUS WRITER ONLY
- Art
- BUS 210 Week 3 DQ 2
- Systems Gaps and Parities
- QNT561 Week 3 Individual Assignment A Decision of Uncertainty
- Payment
- BA 181 Time Warner/Viacom: Countdown to a Blackout
- the name of the textbook is a people and a nation vol 1
- FIN200 Week 1 Assignment Cash Flow Preparation