This project requires that you implement algorithms related to external sorting with a sequential access device like a tape, disk or drum. We suggest you implement a class that mimics the behavior of a sequential access device. With such a device a tape must be able to be reset for input or output, or tested for an end-of-file condition, and an item can be read or written to it, and the size of the tape can be determined, and the file pointer can be reset when necessary. For this assignment, assume the data consists of integers (int). To handle the replacement selection algorithm, we suggest you create a class PQ (priority queue) so that different size priority queues are available for use to preprocess the input.
You are to implement
A) Balanced N-way merge algorithm discussed in lecture, and the
B) Replacement selection algorithm that preprocess the initial data to form longer runs.
Data files and stopwatch and started code already included.
Zip file has complete details.
## Deliverables
1) Complete and fully-functional working program(s) in executable form as well as complete source code of all work done.
2) Deliverables must be in ready-to-run condition, as follows (depending on the nature of the deliverables):
3) All source files of program,
4) all Java .class files (or .jar file) or C++ executable file,
5) 2 page double spaced paper explaining the program, or ReadMe file explaining the program
## Platform
Java