Vsevolod Levitan 1fe0c55e67 Dijkstra 1 tahun lalu
..
src 1fe0c55e67 Dijkstra 10 bulan lalu
Cargo.lock 1fe0c55e67 Dijkstra 10 bulan lalu
Cargo.toml 1fe0c55e67 Dijkstra 10 bulan lalu
README.md 1fe0c55e67 Dijkstra 10 bulan lalu
example.cmd 1fe0c55e67 Dijkstra 10 bulan lalu
example.sh 1fe0c55e67 Dijkstra 10 bulan lalu

README.md

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

Пример

Пример графа

Команда запуска с cargo: cargo run -- 0 0-1=4 0-7=8 1-7=11 1-2=8 7-6=1 7-8=7 2-8=2 6-8=6 6-5=2 2-5=4 2-3=7 5-3=14 5-4=10 3-4=9

Команда запуска исходника: dijkstra.exe 0 0-1=4 0-7=8 1-7=11 1-2=8 7-6=1 7-8=7 2-8=2 6-8=6 6-5=2 2-5=4 2-3=7 5-3=14 5-4=10 3-4=9

Вывод:

Total edges: 14
Starting vertex: 0
Finding paths...
Length of path from 0 to 0 is 0
Length of path from 0 to 1 is 4
Length of path from 0 to 2 is 12
Length of path from 0 to 3 is 19
Length of path from 0 to 4 is 21
Length of path from 0 to 5 is 11
Length of path from 0 to 6 is 9
Length of path from 0 to 7 is 8
Length of path from 0 to 8 is 14

Аргументы запуска

  1. Стартовая вершина
  2. Список рёбер через пробел в формате "A-B=C" где A, B - символьные названия вершин, C - длина ребра Пример: dijkstra.exe 0 0-1=4 0-7=8 1-7=11 1-2=8 7-6=1 7-8=7 2-8=2 6-8=6 6-5=2 2-5=4 2-3=7 5-3=14 5-4=10 3-4=9

Запуск

При наличии cargo (комплекта сборки для Rust):

cargo run -- <старт> <рёбра>

При отсутствии cargo:

Онлайн-компилятор: OnlineGDB