Skip to content

ribeiropdiogo/sudokusolver

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

44 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Sudoku Solver

The Sudoko Solver solves a given Sudoku using a selection of different algorithms. This project was built with the main purpose of implementing some algorithms for academic purposes.

Contributors Issues Code Climate GitHub Actions status | ribeiropdiogo/sudokusolver

Table of Contents

About The Project

This project was built to solve Sudoku's using different algorithms. The main reason is that i like Sudoku and find it interesting to use algorithms to solve the problem. The algorithms that I used in this project resulted from some research in books and websites. I decided to record th execution times of the different algorithms to have a slight ideia of which is the fastest. It is importatnt to note that the measured times are not very representative of the real execution times because the machines were the program runs usually have programs running in background. For testing purposes there is a Batch Mode to run multiple tests that calculates the average execution time of each algorithm.

The algorithms used so far include:

  • Backtracking Algorithm
  • Dancing Links Algorithm (next iteration)

Built With

Getting Started

To get started all you need to do is to is to clone the repository and compile the project.

Prerequisites

The only prerequisite to run this program is to have Java installed in your machine.

Usage

To run the static example you just need to run the SudokuTester class.

For more information, please refer to the Documentation

Contributing

Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request