Алгоритм Дейкстри

Найкоротші шляхи у зваженому графі — покрокова демонстрація

O((V + E) log V)
Клікни вузол — обери джерело. Тягни між вузлами (інструмент «Ребро») — додай ребро.

Вага ребра A → B

Інструменти та управління

Псевдокод

function dijkstra(G, src): dist[v] ← для всіх v dist[src] ← 0 Q ← priority_queue(V) while Q не порожня: u ← extract_min(Q) for v ∈ сусіди(u): if dist[u]+w(u,v) < dist[v]: dist[v] ← dist[u] + w(u,v) prev[v] ← u return dist, prev

Таблиця відстаней

Вузолdistчерез
Оберіть джерело і запустіть

Найкоротші шляхи

Статистика

Крок
Черга
Оброблено
Релаксацій

Легенда

Джерело
У черзі пріоритетів
Поточний мінімум
Оброблений
Найкоротший шлях
Ребро релаксації

Як користуватись:
1. Обери «→ Ребро», тягни між вузлами — введи вагу у вікні.
2. Обери «↖ Вибір», клікни вузол — він стає джерелом.
3. Натисни «▶ Запустити».

Журнал

Готово. Оберіть джерело і натисніть ▶