Question
I have my code below that has insertion, merge quick and counting sort. I need help making the adjustments on it to fix the requirements
I have my code below that has insertion, merge quick and counting sort. I need help making the adjustments on it to fix the requirements from part a to part g. Also need a table of the results and a description of what the program which has parts a-e below of what I should talk about. Finally, needs to be commented in the code as well and I have a screenshot of the input file txt below that need to be implemented in the code, thank you. needs to be in c++
a) The program implements insertion sort, merge sort, quick sort, and counting sort as subprograms or classes (radix sort is optional);
b) The program reads input from a data file specified by user and write the sorted output into another file;
c) Design your program in the way that it can accept users options such as:
*. Which sort algorithm to use;
*. Which sort order to use, that is, non-decreasing order or non-increasing order?
*. Whether should the output remove duplications.
d) It should be fully tested and demonstrate robustness and elegancy on unusual data input. (Input file content validation to check whether the file contains character strings instead of numbers is optional)
e) It should incorporate capabilities to measure the actual sorting running time (refer to https://stackoverflow.com/questions/5248915/execution-time-of-c-program and/or http://stackoverflow.com/questions/538609/high-resolution-timer-with-c-and-linux), make sure it only measures the core sorting part that does not include file I/O operations (file read and write).
f) Results and analysis: use your program to measure the running time on the set of input data files with different sort algorithms to sort in non-decreasing order without the removal duplication option. Normally you need to run each test for 10 times and report the average. Summarize the results in a table and/or a graph (refer to slide 15-16 of the slides for Growth of Functions), and analyze the results based on the complexity theory learned from class.
g) Write a report to describe your program and report the results and analysis. Your report should be up to 5 pages in length, double-spaced, using font size 11 point.
a) Overview of your program;
b) Usage manual of your program (how does a regular user uses your program?);
c) Test cases you have used to make your program fully functional and robust;
d) Potential improvements on your program (given more time, do you have any plan to make it better?);
e) Results and analysis (relate experimental results to the theory we have learned from class).
file10 txt (file10.txt), file 100 txt (file100.txt), file 1000 txt (file1000.txt), file 10000 txt (file10000.txt), file100000 txt (file100000.txt), f file1000000.bxt (ile 1000000.txt)
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started