Make vector diagram + comments for DFS method

This commit is contained in:
2025-05-04 22:25:57 +03:00
parent 651e8ec5aa
commit b0fb83e030
4 changed files with 28 additions and 2 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 35 KiB

25
doc/maze.svg Normal file

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 7.5 KiB

View File

@@ -3,7 +3,7 @@
## Протокол пользовательского уровня
UML-диаграмма протокола пользовательского уровня представлена на рисунке ниже.
![UML-диаграмма протокола пользовательского уровня](maze.png)
![UML-диаграмма протокола пользовательского уровня](maze.svg)
## Описание работы приложения
Сервер `MazeServer` ожидает подключения клиентов по протоколу TCP на заданный порт (по умолчанию 1024). После установления соединения сервер запрашивает имя игрока, а затем начинает игру в лабиринте. Лабиринт генерируется случайным образом при старте каждой новой игровой сессии. Гарантируется наличие хотя бы одного пути из начальной точки `(0, 0)` в конечную точку `(2, 2)`. Добавление дополнительных стен происходит с соблюдением условия достижимости цели.

View File

@@ -7,7 +7,8 @@
Maze::Maze(bool _test_mode, int _steps){
// Инициализация графа лабиринта и его ребер
std::vector<Edge> edges = {
// Индексы направлений: 0 - север, 1 - восток, 2 - юг, 3 - запад
std::vector<Edge> edges = {
{0, 1, 1, 3}, {0, 0, 3, 2}, {1, 1, 2, 3}, {1, 0, 4, 2},
{2, 0, 5, 2}, {3, 1, 4, 3}, {3, 0, 6, 2}, {4, 1, 5, 3},
{4, 0, 7, 2}, {5, 0, 8, 2}, {6, 1, 7, 3}, {7, 1, 8, 3}