Алгоритм Левита: различия между версиями

[непроверенная версия][непроверенная версия]
Содержимое удалено Содержимое добавлено
Нет описания правки
→‎Сложность алгоритма: Внесены правки относительно худшего случая. Исправлена грубая неточность, что алгоритм Левита может достигать экспоненциальной сложности в худшем случае. Обоснования неправильности этого факта указаны в источниках 2 и 3.
Строка 132:
 
=== Сложность алгоритма ===
ВремяПри работынеправильной этогореализации алгоритма, используя вместо очередей M1<nowiki>' и M1''</nowiki> дек и добавляя вершины из M0 в начало дека, алгоритм в худшем случае экспоненциальнобудет работать за экспоненциальное время<ref>[http://codeforces.ru/blog/entry/3793 Левит (модифицированный Ford-Bellman) с e-maxx.ru работает за экспоненту. — Codeforces<!-- Заголовок добавлен ботом -->]</ref>, в связи с чем его использование при решении олимпиадных задач и задач реального временитак крайнеделать не рекомендуется. ОднакоНа нареальных практикеграфах алгоритм зарекомендовал себя достаточно хорошо: время его работы на случайных тестах ведёт себя как <math>O (M \log N)</math><ref>{{нетCite АИweb|20url=https://neerc.ifmo.ru/wiki/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC_%D0%9B%D0%B5%D0%B2%D0%B8%D1%82%D0%B0#.D0.A1.D0.BB.D0.BE.D0.B6.D0.BD.D0.BE.D1.81.D1.82.D1.8C|07title=Алгоритм Левита — Викиконспекты|2014publisher=neerc.ifmo.ru|accessdate=2018-12-13}}</ref>.
 
== Сравнение алгоритмов Дейкстры и Левита ==