A merge sort algorithm that reduces the number of intermediate files needed by reusing emptied files.