Сортировка ваших чисел и заполнение блоков, которые содержат желаемое количество элементов, по мере того, как вы проходите через отсортированный список, является одной из возможностей.
Вы можете сделать что-то подобное, но, вероятно, быстрее, используя кучу : вы заполняете кучу своими элементами, а затем очень быстро извлекаете самые маленькие list_length/N
элементы.
Однако, если скорость не слишком важна, сортировка 1 миллиона чисел является простой и быстрой (доли секунды в Python с Numpy).