Для меня оптимально - это когда работает хорошо и быстро. А не в каждой папке одинаковое количество фоток. Зачем это с практической точки зрения?
Алгоритм сахара хорошо распределяет и ищет потому что использует бд. Хотя вы сказали что бд нельзя.
Хотя вашими критериями оптимальности... Вот загрузим мы в алгоритм сахара 200000 фоток. И в одной папке будет 199999 фоток а в другой 1. Не оптимально?
Это я не к тому что алгоритм сахара плохой. Он тоже крут. Я это ктому что каждый решил задачу так как её понял. И как понимал критерии оптимальности тоже.
Получается что в этой задаче надо было красиво разложить файлики и реально забить на поиск ?