Путаница здесь заключается в том, что в задаче о самом длинном пути обычно запрашивается самый длинный простой путь, т. Е. Самый длинный путь без повторяющихся вершин.По этой причине она может быть сведена к задаче о гамильтоновом пути, которая, как известно, является NP-трудной.
Беллман-Форд и аналогичные алгоритмы, с другой стороны, вычисляют кратчайший путь в графе (примечание: без просто ), то есть вершины можно повторять.
Итак, ваши четыре вопроса:
- Нет.Если в
-G
есть отрицательный цикл, самый длинный путь вообще не существует в G
, потому что вы можете просто продолжать обходить цикл вечно.Самый длинный путь simple
может все еще существовать, но с отрицательным циклом или без него, проблема может быть сведена к гамильтонову пути и поэтому все еще NP-трудна. - Действительно!(Если график не ориентирован.)
- Да
- Да