Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

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

Assignment 3

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$ 

Note that your programs must always supply a newline character at the end of each line, even if the last line does not contain 8 numbers. In other words, after running your program, the Unix prompt must always appear in the leftmost column of the screen. Output that looks like this is incorrect:

z123456@turing:~/csci241/Assign3$ ./quick_sort < random6.txt 19 61 75 88 90 98z123456@turing:~/csci241/Assign3$ 

6. Hints

This assignment has a great deal in common with Assignment 1, particularly when it comes to reading the input and printing the output. You should approach this assignment in a similar fashion to Assignment 1 - start by working on just one of the two files, make sure that you can read and print the unsorted output, then implement the sorting algorithm for that file. After you have one algorithm working, proceed to the other one. Use the smaller data files during your initial testing and debugging, but make sure that you test your programs with some of the larger data sets as well.

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image_2

Step: 3

blur-text-image_3

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Pro SQL Server Administration

Authors: Peter Carter

1st Edition

1484207106, 9781484207109

More Books

Students also viewed these Databases questions