Overview
From video games to movies, mazes are ubiquitous. Explore a dozen algorithms for generating these puzzles randomly, from Binary Tree to Eller's, each copiously illustrated and accompanied by working implementations in Ruby. You'll learn their pros and cons, and how to choose the right one for the job.
You'll start by learning six maze algorithms and transition from making mazes on paper to writing programs that generate and draw them. You'll be introduced to Dijkstra's algorithm and see how it can help solve, analyze, and visualize mazes. Part 2 shows you how to constrain your mazes to different shapes and outlines, such as text, circles, hex and triangle grids, and more. You'll learn techniques for culling dead-ends, and for making your passages weave over and under each other. Part 3 looks at six more algorithms, taking it all to the next level. You'll learn how to build your mazes in multiple dimensions, and even on curved surfaces.
Through it all, you'll discover yourself brimming with ideas, the best medicine for programmer's block, burn-out, and the grayest of days. By the time you're done, you'll be energized and full of maze-related possibilities!
What You Need:
The example code requires version 2 of the Ruby programming language. Some examples depend on the ChunkyPNG library to generate PNG images, and one chapter uses POV-Ray version 3.7 to render 3D graphics.
While major retailers like Amazon may carry Mazes for Programmers (Code Your Own Twisty Little Passages), we specialize in bulk book sales and offer personalized service from our friendly, book-smart team based in Portland, Oregon. We’re proud to offer a Price Match Guarantee and a streamlined ordering experience from people who truly care.
We’re trusted by over 75,000 customers, many of whom return time and again. Want proof? Just check out our 25,000+ customer reviews—real feedback from people who love how we do business.
Prefer to talk to a real person? Our Book Specialists are here Monday–Friday, 8 a.m. to 5 p.m. PST and ready to help with your bulk order of Mazes for Programmers (Code Your Own Twisty Little Passages).