This work was completed as part of the Cambridge CST Tripos. The task was, given a large binary file of integers running on a machine with RAM less the file's size, sort the file using a single auxilary file.
My implementation was ranked in the top 5% of the year with a running time of 11.743s - the average running time for submission was around 2 minutes.
The solution can be tested by running ExternalSortTester.main(String[] args). This will use the test cases in test-suite.zip.
The main class is src/uk/ac/cam/ahb36/fjava/tick0/ExternalSort.java