Кратчайший путь в ациклическом графе
Версия от 19:48, 12 декабря 2010; Кирилл (обсуждение | вклад) (→Кратчайший путь в ациклическом графе)
Кратчайший путь из u в v – это любой путь p из u в v, для которого
- = сумма весов всех ребер пути p
- : по всем путям p из u в v, если существует путь u в v
- в противном случае
Принцип оптимальности на префиксе
Префикс оптимального решения сам является оптимальным решением (в другой подзадаче)
Если ac - оптимальное решение , то и ab (префикс ac) тоже является оптимальным решением.
Для нахождения кратчайшего пути в графе заведем функцию переменную opt[x], в которой хранится длина кратчайшего пути до вершины х.
В общем случае мы можем написать:
, где cost(vu) - вес ребра из u в v