Решение задачи о поиске пути в лабиринте с использованием алгоритма поиска в ширину (BFS).
- Поиск кратчайшего пути от точки старта (
1) до финиша (F) в лабиринте - Визуализация найденного пути
- Генерация случайных лабиринтов для тестирования
- Полное покрытие кода тестами
- Rust 1.58 или новее
- Cargo
# Клонирование репозитория
git clone https://github.com/jahamars/pathfinder.git
cd pathfinder
# Сборка проекта
cargo build
# Сборка релизной версии
cargo build --release# Запуск с лабиринтом по умолчанию
cargo run
# Запуск с указанием пути к файлу
cargo run -- --path path/to/maze.txt
# Запуск с визуализацией
cargo run -- --path path/to/maze.txt --format visual
# Запуск в режиме отладки
cargo run -- --path path/to/maze.txt --debug# Генерация случайного лабиринта 20x20
cargo run --bin generate_maze
# Генерация лабиринта с заданными размерами
cargo run --bin generate_maze -- 30 15 custom_maze.txt5
5
#####
1___#
###_#
#___#
#F###
Где:
- Первая строка - ширина лабиринта
- Вторая строка - высота лабиринта
- Последующие строки - сам лабиринт, где:
#- стена_- пустое пространство1- точка стартаF- точка финиша
# Запуск всех тестов
cargo test
# Запуск тестов с выводом
cargo test -- --nocapturemake coveragemake package