### The goal of this programming assignment is twofold. In particular, it relates to you comparing the relative performance of different sorting algorithms on the same dataset and the same algorithm on different datasets.

**INSTRUCTIONS TO CANDIDATES**
###### ANSWER ALL QUESTIONS

**Data Structures Homework 3: Basic Sorting**

The goal of this programming assignment is twofold. In particular, it relates to you comparing the relative performance of different sorting algorithms on the same dataset and the same algorithm on different datasets.

First choose a sorting algorithm from the following list {selection sort, insertion sort, bubble sort} and another algorithm from the following list {merge sort, quick sort}.

**Case 1: **Randomly generate [1,000, 10,000, and 100,000] integer values (in the range of 0 to 106) to be inserted into the data structures. Note that the list (i.e., the input values) itself should not be sorted and all algorithms should use the same input file when the input size is the same.

**Case 2: **Also, test the speed of algorithms when the input array is already sorted (for the same input data).

The following output should be provided for an average of 10 sorts of each algorithm and input size:

- the CPU time (use the same machine)
- the number of comparisons
- the number of swaps

**Note: **You can only use (i.e., copy) code from the book and slides. You need to develop the rest of the code yourself.

You can run 2 instances of algorithms that take more than one hour.

## Related Questions

##### Introgramming & Unix Fall 2018, CRN 44882, Oakland University Homework Assignment 6 - Using Arrays and Functions in C

DescriptionIn this final assignment, the students will demonstrate their ability to apply two ma

##### The standard path finding involves finding the (shortest) path from an origin to a destination, typically on a map. This is an

Path finding involves finding a path from A to B. Typically we want the path to have certain properties,such as being the shortest or to avoid going t

##### Develop a program to emulate a purchase transaction at a retail store. This program will have two classes, a LineItem class and a Transaction class. The LineItem class will represent an individual

Develop a program to emulate a purchase transaction at a retail store. Thisprogram will have two classes, a LineItem class and a Transaction class. Th

##### SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of Sea Ports. Here are the classes and their instance variables we wish to define:

1
Project 1
Introduction - the SeaPort Project series
For this set of projects for the course, we wish to simulate some of the aspects of a number of

##### Project 2 Introduction - the SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of Sea Ports. Here are the classes and their instance variables we wish to define:

1
Project 2
Introduction - the SeaPort Project series
For this set of projects for the course, we wish to simulate some of the aspects of a number of