Sudoku puzzle
A Sudoku puzzle is a number-placement constraint puzzle in which each row, column, and designated region contains each permitted symbol exactly once.
Optimization Algorithms: AI techniques for design, planning, and control problems
A constraint puzzle in which digits must be assigned to cells of a grid so that each required row, column, and subgrid contains each digit according to the puzzle rules.
- How it is used
- Frames Sudoku as a constraint-satisfaction problem and connects it to entertainment, cognitive practice, and steganography.
- How deep it goes
- Defines the grid constraints and demonstrates solver configuration, but does not fully derive the solving algorithms.
- Examples
- Uses 9 × 9 grids, 3 × 3 boxes, a hard puzzle listing, solver code, and comparative timing results.
- What you can do after
- Evaluate and implement Sudoku solvers using backtracking, simulated annealing, or PuLP comparisons.
Software Design for Python Programmers
A Sudoku puzzle is a constraint puzzle in which digits must be placed in a grid so that each required row, column, and region satisfies distinctness rules.
- How it is used
- Applies recursion with backtracking to solve a Sudoku grid.
- How deep it goes
- Explains grid traversal, validity checks, recursive base cases, and backtracking implementation.
- Examples
- Uses a file-based grid, a worked input-and-solution pair, and Python solver listings.
- What you can do after
- Builds a Python program that reads, solves, and prints a Sudoku puzzle or reports no solution.
Read how Software Design for Python Programmers explains Sudoku puzzle →
Related concepts
- backtrackingaddressed by · Backtracking is a technique that returns to earlier decisions or states along a path to reconsider choices, explore alternatives, or reconstruct a solution.
- constraint-satisfaction problemuses · A constraint-satisfaction problem is a problem defined by variables, domains of possible values, and constraints, with the goal of finding an assignment that satisfies the constraints.
- recursionuses · Recursion is a computational technique in which a definition or procedure refers to or invokes the same definition or procedure, directly or indirectly.
- graph coloringequivalent to · Graph coloring is the assignment of colors to graph elements subject to constraints, such as requiring adjacent vertices to have different colors.
- Latin squareuses · A Latin square is an n × n array containing n symbols such that every symbol occurs exactly once in each row and column.
These guides are generated from the text of Manning books by Manning's knowledge graph and link to the sections they draw on. The full books are available on liveBook and at manning.com.

