4551
правка
Irina (обсуждение | вклад) |
Irina (обсуждение | вклад) |
||
Строка 60: | Строка 60: | ||
<math> \neg P2 \to update \; t</math> | <math> \neg P2 \to update \; t</math> | ||
<math> \neg P3 \to update \; r</math> | <math> \neg P3 \to update \; r</math> | ||
od <math>\{ P0 \and P1 \and P2 \and P3 \} \;</math>. | |||
Первую команду цикла можно переписать в виде <math>\exist (u, v) \in E: r[u] - r[v] = w[u, v] \and t[v] - t[u] < d[v] \to t[v] := t[u] + d[v] \;</math>. | Первую команду цикла можно переписать в виде <math>\exist (u, v) \in E: r[u] - r[v] = w[u, v] \and t[v] - t[u] < d[v] \to t[v] := t[u] + d[v] \;</math>. | ||
Строка 91: | Строка 91: | ||
После объединения всех нововведений алгоритм приобретает следующую форму. | После объединения всех нововведений алгоритм приобретает следующую форму. | ||
r, t, | |||
<math>r, t, \phi := 0, d, \infty \;</math> | |||
do {P1} | |||
<math>\exist (u, v) \in E: r[u] - r[v] = w[u, v]</math> | |||
<math>\and \; t[v] - t[u] < d[v] \to t[v] := t[u] + d[v]</math> | |||
<math>\neg P3 \and \exist v \in V: t[v] \ge \phi</math> | |||
<math>\to r[v], t[v] := r[v] + 1, d[v]</math> | |||
<math>P0 \and P2 \and \phi > max(t) \to \phi := max(t)</math> | |||
<math>\exist (u, v) \in E: r[u] - r[v] > w[u, v]</math> | |||
<math>\to r[v] := r[u] - w[u, v]</math> | |||
<math>od \{ P0 \and P1 \and P2 \and P3 \} \;</math>. | |||
правка