Project

Knight's Tour Puzzle

Challenging
536 completions
~ 23 hours
4.4

You will write a program designed to find a solution to the problem with a board of any size. You will learn about matrices, backtracking, recursion, and algorithms.

Provided by

JetBrains Academy JetBrains Academy

About

The Knight’s Tour is a fun puzzle where you move the knight so that it visits every square of the chessboard once. The rules are simple and fun, but the game is really hard to master. Let’s make a program to find a solution! This project will help you practice concepts frequently tested in technical interviews at top tech companies.

Graduate project icon

Graduate project

This project covers the core topics of the Python OOP course, making it sufficiently challenging to be a proud addition to your portfolio.

At least one graduate project is required to complete the course.

What you'll learn

Once you choose a project, we'll provide you with a study plan that includes all the necessary topics from your course to get it built. Here’s what awaits you:
Your knight is bored with the standard chessboard! Modify your program to change the board size.
The knight is ready to move. Your program needs to check where your knight is allowed to go.
What is the next best move for your knight? The Warnsdorff’s rule can help you figure it out!
Give this puzzle a shot and see whether you can find the knight's tour.
This puzzle is too hard! Let's make our program find a solution for us.

Reviews

Guillaume Konen avatar
Guillaume Konen
3 months ago
The porject is quite fun as it begins as a little game and it finish with a real challenge and discover the backtracking. I struggle mainly to organize my code and integrate each new step, specially the last one with the bactracking as it affects different layer of my code and I have to refactor. M ...
Daniel Wirth
1 year ago
I have learned about warnsdroff's rule and refreshed my basic python skills.
Riley Hood
1 year ago
Learned a lot about how recursion works with more complex functions

4.4

Learners who completed this project within the Python OOP course rated it as follows:
Usefulness
4.7
Fun
4.5
Clarity
4.2