# Алгоритм Дейкстры.
## Пример
![Пример графа](https://media.geeksforgeeks.org/wp-content/uploads/20240111182238/Working-of-Dijkstras-Algorithm-768.jpg)

Команда запуска с 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](https://onlinegdb.com/XJxGihSwo)