Question: Write two short programs that implement the Quicksort and Merge Sort algorithms. Each of these programs will read up to 1000 integers, sort them, and

Write two short programs that implement the Quicksort and Merge Sort algorithms. Each of these programs will read up to 1000 integers, sort them, and then print them in a formatted fashion.

1. Initial Setup

  1. Log in to Unix.

  2. Run the setup script for Assignment 3 by typing:

     setup 3 

2. Input

Each program you write should read from standard input using input redirection. Input files for this assignment will contain a series of integers separated by whitespace.

3. Files We Give You

The setup script will create the directory Assign3 under your csci241 directory. It will copy a makefile named makefile to the assignment directory and will also create symbolic links to a number of sample data files that you can use to test your programs.

You should assume that we will test your programs using data files other than the ones supplied as part of this assignment.

Using the makefile we give you, you can build one specific program or build all three programs. To build a single specific program, run the command make followed by the target name for the program that you want to build (quick_sort or merge_sort). For example:

z123456@turing:~$ make merge_sort

To build both programs, run the command make all or just make.

Running the command make clean will remove all of the object and executable files created by the make command.

The data files are named random6.txt, random8.txt, random16.txt, etc., with the numeric part of the file name specifying the number of random values that the file contains.

4. Files You Must Write

You will write two files for this assignment:

  • quick_sort.cpp - This file should contain your solution that uses the quicksort algorthm.
  • merge_sort.cpp - This file should contain your solution that uses the merge sort algorthm.

The two files will obviously contain a great deal of identical code.

5. Output

The output should print 8 sorted numbers per line (of course the last line may have less than 8 numbers), nicely aligned in columns. Numbers should be right-aligned. Use the setw manipulator to pad numbers with leading spaces. Print a space between numbers and a newline character ( ) at the end of each line. The output should look like this:

z123456@turing:~/csci241/Assign3$ ./quick_sort < random6.txt 19 61 75 88 90 98 z123456@turing:~/csci241/Assign1$ 
z123456@turing:~/csci241/Assign3$ ./merge_sort < random16.txt 7 15 15 20 30 37 42 52 53 56 58 63 65 74 78 89 z123456@turing:~/csci241/Assign1$ 
z123456@turing:~/csci241/Assign3$ ./quick_sort < random25.txt 1 23 106 127 147 148 157 208 239 265 282 483 561 576 579 677 753 853 879 911 945 959 965 978 982 z123456@turing:~/csci241/Assign3$

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!