1
0
Vsevolod Levitan 1fe0c55e67 Dijkstra vor 1 Jahr
..
src 1fe0c55e67 Dijkstra vor 10 Monaten
Cargo.lock 1fe0c55e67 Dijkstra vor 10 Monaten
Cargo.toml 1fe0c55e67 Dijkstra vor 10 Monaten
README.md 1fe0c55e67 Dijkstra vor 10 Monaten
example.cmd 1fe0c55e67 Dijkstra vor 10 Monaten
example.sh 1fe0c55e67 Dijkstra vor 10 Monaten

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