 # Simulate the performances of different sorting algorithms with rand...

## Question

Simulate the performances of different sorting algorithms with randomly generated input data and measure their execution time.

Input:
Randomly generated positive integers (ranges from 0 to 100000). The numbers of input should be 1000, 5000, 10,000, 50,000 and 1000,000 which will be stored into one dimensional array. Each sorting algorithm will use the same input.

Algorithms:
• Insertion Sort
• Shellsort – For increment sequence, use sequence suggested by Shell hk = floor(hk+1/2).
• Heapsort - Use O(NlogN) algorithm
• Quicksort – Use Median-of-Three Partitioning.

Output:

Run each algorithm and print out the following results:

1. Print out the running time of algorithms for each input data and draw a graph for the running times..
2. Print out the number of swaps for each algorithm.

NOTE: If the run time of an algorithm is more than 10 mins, stop running of the algorithm.

## Solution Preview

These solutions may offer step-by-step problem-solving explanations or good writing examples that include modern styles of formatting and construction of bibliographies out of text citations and references. Students may use these solutions for personal skill-building and practice. Unethical use is strictly forbidden.

import java.util.Random;
import java.math.MathContext;;

public class SortCompare
{
public static long numberOfChanges;
public static void insertionSort( int [ ] a )
{
int j;
for( int p = 1; p < a.length; p++ )
{
int tmp = a[ p ];
for( j = p; j > 0 && tmp < a[ j - 1 ] ; j-- )
{
a[ j ] = a[ j - 1 ];
numberOfChanges++;
}
a[ j ] = tmp;
numberOfChanges++;
}
}

public static void shellSort( int [ ] a )
{
int j;

for( int gap = a.length / 2; gap > 0; gap /= 2 )
for( int i = gap; i < a.length; i++ )
{
int tmp = a[ i ];
for( j = i; j >= gap && tmp < a[ j - gap ]; j -= gap )
{
a[ j ] = a[ j - gap ];
numberOfChanges++;
}
a[ j ] = tmp;
numberOfChanges++;
}
}...

By purchasing this solution you'll be able to access the following files:
Solution.java.

\$29.25
for this solution

or FREE if you
register a new account!

PayPal, G Pay, ApplePay, Amazon Pay, and all major credit cards accepted.

### Find A Tutor

View available Data Structures and Algorithms Tutors

Get College Homework Help.

Are you sure you don't want to upload any files?

Fast tutor response requires as much info as possible.