i am trying to write this program and i have no clue how to do it. Could someone help me please.
a) The program implements insertion sort, merge sort, quick sort, and counting sort as subprograms or classes;
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 user’s options such as:
*. Which sort algorithm to use;
*. 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 .make sure it only measures the core sorting part that does not include file I/O operations.
f) Results and analysis: use your program to measure the running time on the set of input data files (file10.txt, file100.txt, file1000.txt, file10000.txt, file100000.txt, file1000000.txt) with different sort algorithms without removal duplication option. Normally you need to run each test for 10 times and report the average.