Solver Algoritms is a repository with 4 algorithms that solve 4 different problems using Backtracking. The 4 problems are:
- Sudoku solver
- Maze solver
- Crossword solver
- Graph Colorizer
These algoritms are either provided with visual support using pygame, or just with terminal output where pygame support was not possible(Graph Colorizer).
Clone the repository
git clone https://github.com/Adeon18/Solver_Algorithms.git
Go to the folder
cd Solver_Algorithms
Use the package manager pip to install the needed libraries.
pip install -r requirements.txt
All you need to do is run the script main.py in terminal from the root project folder or via Text Editor and you're good to go.
python -m main.py
You are gonna see a terminal interface like this:
Hello! This is a script launcher. Choose a number of the script you would like to run.
Before you choose, close down the program and edit the coresponding file in data folder if you want to solve your problem
1. Maze solver
2. Sudoku solver
3. Crossword solver
4. Graph Colorer
Enter a number:
Algoritms take the problems from data folder, so if you want your problem to be solved you can edit a file with the specific name.
When you choose an option you are going to end up with windows like these:
You can edit the dalay speed between each step of the algoritm using UP and DOWN keys on your keyboard.
If you did not end up with windows like these, that means that we couldnt provide a graphical interface for the problem. Check your terminal :D
Everything else is quite simple. Enjoy!
- Fork the repository
- Make your change in your forked repository
- Make a pull request and add a rewiever among us(You can see who to add below)
- Algoritms visualization with pygame and README - Ostap Trush
- Crossword solver algorithm - Olexiy Hoev
- Maze solver algorithm - Alina Muliak
- Graph Colorizer - Daryna Kosyk
- Sudoku solver algorithm - Daria Shabatska
Feel free to use the files with attribution(As written in the licence).
Module are desined specifically to be easily disconnected from the GUI and used in your own programs. Enjoy!