Я разговаривал с моим отцом, он спросил меня:
«Какой алгоритм вы можете использовать, чтобы ваш интернет-магазин мог выбрать лучший склад для отправки товара?»
Мойответ был:
«О, это просто, просто используйте Dijkstra и используйте в качестве весов для узлов денежные затраты на транспортировку, возможно, с учетом времени, когда начальный узел является клиентским домом»
Затем он спросил:
«Хорошо, но в его списке много разных предметов, и на многих складах их нет, нужно выбрать несколько складов для отправки предметов».
А потом мой мозг застыл.
Так какой алгоритм я бы использовал для этого?Я знаю, что могу использовать Dijkstra, используя множество возможностей, а затем вычислить результат из результатов предыдущих запусков Dijkstra, но есть ли алгоритм, который может рассчитать несколько путей, которые приведут к наилучшему возможному общему результату?