Можем ли мы применить алгоритм Беллмана-Форда к Неориентированному графу?
Я знаю, что алгоритм Беллмана-Форда работает для направленных графов. Будет ли это работать для неориентированного графика? Кажется, что с неориентированным графом он не сможет обнаруживать циклы, потому что параллельные ребра будут считаться циклами. Это правда или нет? Можно ли применить алгоритм?
2 ответов
на самом деле любой неориентированный граф также является направленным графом.
вам просто нужно указать любые ребра {u, v} дважды (u, v) и (v, u).
но не забывайте, что это также означает, что любое ребро с отрицательным весом будет считаться петли. Поскольку алгоритм Беллмана-Форда работает только на графах, которые не содержат циклов с отрицательными Весами, это фактически означает, что ваш неориентированный граф не должен содержать ребер с отрицательным весом.
Если это не так его довольно хорошо использовать Bellmann-Ford.
Bellman-Ford не применим для поиска кратчайших путей на графах, содержащих отрицательные циклы, но он находит кратчайшие пути на графах и может определить, содержит ли граф отрицательный цикл, хотя он не найдет кратчайшего пути, поскольку такого пути не существует.