Представьте, что у вас есть числа 1 - 9
9 7 2 6 3 4 8 5 1
И давайте предположим, что в память помещается только 3.
Таким образом, вы разбили бы их на куски по 3 исортируйте каждый, сохраняя каждый результат в отдельном файле:
279
346
158
Теперь вы откроете каждый из трех файлов в виде потоков и прочитаете первое значение из каждого:
2 3 1
Выводсамое низкое значение 1
, и получите следующее значение из этого потока, теперь у вас есть:
2 3 5
Выведите следующее наименьшее значение 2
и продолжайте, пока вы не выведете весь отсортированный список.