/Sudoko-Solver-with-Python

Solving Sudoku Puzzles using Python in 3 Different Approaches.

Primary LanguageJupyter NotebookApache License 2.0Apache-2.0

Sudoku Puzzles Solver using Python (Analysis 3 Different Approaches!)

Introduction

Welcome to my humble Python Notebook! In this notebook, we will explore the fascinating world of Sudoku.

What is Sudoku?

  • Sudoku is a popular logic-based puzzle that has captivated puzzle enthusiasts worldwide. It involves a 9x9 grid, divided into nine 3x3 sub-grids, and the objective is to fill in the grid with digits from 1 to 9 in such a way that each column, each row, and each sub-grid contains all the numbers from 1 to 9 without any repetition.
  • Sudoku puzzles generally start with some of the cells already filled in, and the solver's task is to complete the remaining cells following the game's rules.
  • The puzzles vary in difficulty, some relatively straightforward and others requiring advanced problem-solving techniques.

In this notebook, we will compare and analyze multiple Sudoku solver implementations using Python. We will explore different approaches and algorithms to tackle Sudoku puzzles of varying complexity. The main goal of this notebook is to compare different approaches and techniques in solving Sudoku. So let's dive in and embark on our Sudoku-solving adventure!

We're going to compare three different approaches, all of which guarantee 100% accuracy in solving Sudoku puzzles:

  1. Backtracking Algorithm

  1. Naked Twin Approach (My implementation 1)
  2. Naked Twin Approach (Online implementation 2)

image image

Check the notebook for full documentation and code Here!
Kaggle link: Here

Note: If you find the notebook useful, please give an upvote.

Contacts:

I would be delighted to connect with you! Please feel free to reach out to me via LinkedIn or email for any inquiries or discussions.

For now, take care everyone, and may your journey be filled with success as you pursue your dreams and reach for the stars! 🙏🌹
Peace. 👋