Question: Objectives: Comparison of Insertion short and Shell sort Shell sort is a highly efficient sorting algorithm and is based on Insertion sort algorithm. Write a
Objectives: Comparison of Insertion short and Shell sort
Shell sort is a highly efficient sorting algorithm and is based on Insertion sort algorithm. Write a program to sort a random integer array as follows:
Use Insertion sort to sort the random array. Print the number of comparisons, the number of item movements swapping and calculate the sorting time in nanoseconds.
Use Shell sort to sort the random array. Print the number of comparisons, the number of item movements swapping and calculate the sorting time in nanoseconds.
For each test case, calculate the time performance of Shell sort over Insertion sort in percentage using this formula:
o Calculate the difference of time performance of the two sorting algorithms
o Calculate the average of time performance of the two sorting algorithms.
o Time performance difference average
Extra Credit points
Setup a table to summarize the test data sizes and the time performance.
Create a graph to demonstrate the item
Test your program on different number of elements. To be consistent, use modulus for random function.
Notes on the sample outputs: The number of movements, comparisons and time performance of your program would not be the same as the sample given output because of the random array and different computers.
THIS IS AN EXAMPLE ON HOW THE OUTPUT SHOULD LOOK LIKE:
Sample Output Insertion and Shell sorts
Program to compare Shell sort and Insertion sort
Enter the number of elements to be sorted to exit:
TEST
Test case with elements:
Insertion sort
Number of comparisons:
Number of items moves:
Sorting time : nanoseconds
Shell sort
Number of comparisons:
Number of items moves:
Sorting time : nanoseconds
Time performance of Shell sort over Insertion sort:
New Test Case
Enter the number of elements to be sorted to exit:
TEST
Test case with elements:
Insertion sort
Number of comparisons:
Number of items moves:
Sorting time : nanoseconds
Shell sort
Number of comparisons:
Number of items moves:
Sorting time : nanoseconds
