Я использую bfs, чтобы найти добавочный путь. Но он производит одинаковый путь каждый раз. Но для алгоритма ford fulkerson требуется, чтобы каждый раз выбирался каждый путь от источника к потоку , так может кто-нибудь предложить мне, как изменить bfs так, чтобы он создавал различный путь каждый раз между источником и sink.graph направлен и взвешенмодификация bfs для алгоритма ford fulkerson, чтобы найти путь расширения
ответ
Вам нужно убедиться, что BFS игнорирует края, где использовалась вся емкость , Обычно BFS запускается на так называемой остаточной сети, в которой каждый объем ребер указывает, сколько емкости остается на этом краю (учитывая поток, который вы отправили через этот край). Вы можете либо сохранить отдельный остаточный график, либо вы можете иметь неявный, заставив BFS посмотреть разницу между исходной емкостью и текущим потоком для каждого ребра (и обработать край как отсутствующий, если его емкость равна нулю).
, но bfs выбирает путь, основанный на no.vertices, я имею в виду, что самый короткий путь основан на нет. вершин от источника до потолка – shalini
Я меняю емкость, но это не помогает – shalini
Да, при первом запуске BFS выберет самый короткий путь. Однако после того, как этот путь будет найден, Ford-Fulkerson отправит как можно больше потока по этому пути; это будет использовать всю пропускную способность по крайней мере на одном из краев, таким образом, «нарушая» путь. Следующий BFS обязательно найдет другой путь, потому что по крайней мере один из краев старого пути теперь непригоден. Как я уже сказал, вам нужно убедиться, что края, где используется вся емкость, будут игнорироваться BFS. –
- 1. Анализ алгоритма максимального потока Ford-Fulkerson
- 2. Алгоритм Ford Fulkerson Java
- 3. Обновить график в Ford-Fulkerson
- 4. Ford Fulkerson: Состояние бэкграунда
- 5. Выбор расширенного пути в алгоритме ford fulkerson
- 6. Ошибка сегментации в функции, реализующей Ford-Fulkerson
- 7. BFS Модификация Для Всего Кратчайшие
- 8. двунаправленный максимальный поток с использованием ford-fulkerson
- 9. Ford Fulkerson .. Какова цель заднего края?
- 10. Реализация взвешенного BFS, чтобы найти кратчайший путь
- 11. Как отслеживать путь во время алгоритма BFS
- 12. Динамический (с индексом по времени) Максимальный расход - Ford-Fulkerson
- 13. Модификация алгоритма Дейкстры
- 14. Модификация алгоритма максимального потока
- 15. Используйте BFS, чтобы найти кратчайший путь между двумя узлами
- 16. Увеличьте поток, изменив только один край после Ford-Fulkerson
- 17. Использование алгоритма BFS для нахождения кратчайшего пути
- 18. Продолжить Ford-Fulkelson
- 19. Найти путь в неориентированном графе BFS - Java
- 20. SPOJ ВОД: Разработка алгоритма BFS
- 21. Прекращение алгоритма Bellman-Ford в асинхронной распределенной модели
- 22. модификация алгоритма кратчайшего пути Dijkstra
- 23. Найти самый длинный путь с BFS
- 24. Найти путь с BFS в графе
- 25. Отладка алгоритма трассировки дерева BFS
- 26. Модификация алгоритма Dense в OpenCV
- 27. Как получить фактический путь, найденный Bellman-Ford
- 28. Выполнение алгоритма кратчайшего пути Bellman-Ford
- 29. Модификация алгоритма для определения циклов в графе
- 30. Небольшая модификация для конкретной реализации алгоритма Дейкстры
Каждый раз используйте случайного ребенка. – Mark