Изменения

Перейти к: навигация, поиск

Алгоритм "поднять-в-начало"

14 байт добавлено, 01:39, 5 января 2016
Оценка быстродействия
Если операция <tex>\mathtt{discharge}</tex> не выполняет подъем, то следующий ее вызов происходит дальше по списку <tex>L</tex> <tex>(</tex>длина <tex>L</tex> меньше <tex>|V|)</tex>. Если же подъем выполняется, то следующий вызов происходит уже в другой фазе алгоритма. Значит, каждая фаза содержит не более <tex>|V|</tex> вызовов <tex>\mathtt{discharge}</tex>.
Таким образом, цикл '''<tex>\mathtt{while''' }</tex> процедуры <tex>\mathtt{relabelToFront}</tex> выполняет работу (без учета операций вызываемых в <tex>\mathtt{discharge}</tex>), за <tex>O(V^{3})</tex>.
Оценим работу выполнения внутри операции <tex>\mathtt{discharge}</tex>:
Анонимный участник

Навигация