#optimization #grouping
Вопрос:
У меня есть проблема, и я думаю, что это должна быть известная проблема оптимизации, но я не знаю ее названия. Я спрашиваю его название.
Что я хочу :
допустим, у нас есть папки в алфавитном порядке, в каждой папке определенное количество файлов.
Я хочу сгруппировать папки в N групп, сохраняя алфавитный порядок папок, и я хочу оптимизировать, чтобы в каждой группе было примерно одинаковое количество файлов.
Вы можете найти иллюстрацию на этом изображении с 9 папками, 196 файлами и N=2.
Конечно, у нас есть еще много папок и больше файлов в каждой папке.
Мы уже подумали о наивном решении (на изображении), использующем деление на оптимальное количество файлов. Однако это не оптимально: для большой папки с большим количеством файлов мы можем представить, что оптимальным было бы иметь группу только с такой большой папкой. Наш алгоритм этого не допускает. Мы можем сделать некоторые исключения для больших папок, объединить их в одну группу, прежде чем снова обрабатывать каждую сторону, но я думаю, что дальше будут другие исключения…
Вот почему я хочу найти эквивалентную проблему, чтобы изучить различные логики, которые уже существуют.
Я могу подумать о некоторых решениях, но я действительно думаю, что эта проблема уже была изучена (с другими, кроме папок/файлов) с лучшими решениями, которые я найду сам.
Спасибо за вашу помощь 🙂
Комментарии:
1. Немного похоже на эту проблему: yetanothermathprogrammingconsultant.blogspot.com/2018/02/. … Не так уж и тривиально. Подход к динамическому программированию может быть хорошим началом для вас.
2. Похоже, это та же самая проблема! Спасибо !! 😀