Log In
0% completed
All Lessons
Free Lessons (2)
Our First Random Mazes
Who Should Take This Course and Why?
Getting Started
Preparing the Grid
The Binary Tree Algorithm
Digging Deeper into the Binary Tree Algorithm
The Sidewinder Algorithm
Quiz Yourself on Random Mazes Algorithms
Exercise: Upside-down Sidewinder
Automating and Displaying our Mazes
Introducing Our Basic Grid
Implementing the Grid Class
Implementing the Binary Tree Algorithm
Displaying a Maze on the Console
Implementing the Sidewinder Algorithm
Rendering a Maze as an Image
Quiz Yourself on Automating and Displaying Mazes
Exercise: Interactive Fiction Display
Solution: Interactive Fiction Display
Solving Mazes
Dijkstra's Algorithm
Implementing Dijkstra's Algorithm
Displaying the Dijkstra's Matrix
Finding the Shortest Path
Making Challenging Mazes
Coloring Our Mazes
Displaying Colored Mazes
Quiz Yourself on Dijkstra's Algorithm
Exercise: Coloring Cells by Shortest Distance
Solution: Coloring Cells by Shortest Distance
Avoiding Bias with Random Walks
Understanding Biases
The Aldous-Broder Algorithm
Implementing the Aldous-Broder Algorithm
Wilson's Algorithm
Implementing Wilson's Algorithm
Quiz Yourself on Avoiding Bias with Random Walks
Exercise: Optimizing Aldous-Broder
Solution: Optimizing Aldous-Broder
Adding Constraints to Random Walks
Introduction to Random Walks (the Hunt-and-Kill Algorithm)
Implementing the Hunt-and-Kill algorithm
Counting Dead Ends
The Recursive Backtracker Algorithm
Implementing the Recursive Backtracker Algorithm
Quiz Yourself on Adding Constraints to Random Walks
Exercise: Recursive Recursive Backtracker
Solution: Recursive Recursive Backtracker
Fitting Mazes to Shapes
Introducing Masking
Implementing a Mask
ASCII Masks
Image Masks
Quiz Yourself on Fitting Mazes to Shapes
Exercise: Generating Geometric Masks
Solution: Generating Geometric Masks
Going in Circles
Understanding Polar Grids
Drawing Polar Grids
Adaptively Subdividing the Grid
Implementing a Polar Grid
Testing and Tweaking
Quiz Yourself on Polar Grids
Exercise: Polar Grids with Uneven Row Heights
Solution: Polar Grids with Uneven Row Heights
Exploring Other Grids
Implementing a Hex Grid
Displaying a Hex Grid
Making Hexagon (Sigma) Mazes
Implementing a Triangle Grid
Displaying a Triangle Grid
Making Triangle (Delta) Mazes
Quiz Yourself on Hexagon and Triangle Grids and Mazes
Exercise: Zeta Mazes
Solution: Zeta Mazes
Braiding and Weaving Our Mazes
Braiding Mazes
Cost vs. Distance
Implementing a Cost-Aware Dijkstra's Algorithm
Introducing Weaves and Insets
Getting Deep into Weaves and Insets
Generating Weave Mazes
Implementing the OverCell and UnderCell Class
Implementing the WeaveGrid Class
Quiz Yourself on Braiding and Weaving Mazes
Exercise: Sparse Mazes
Solution: Sparse Mazes
Improving Our Weaving
Introducing Kruskal's Algorithm
Implementing Randomized Kruskal’s Algorithm
Better Weaving with Kruskal
Implementing Better Weaving
Quiz Yourself on Kruskal's Algorithm
Exercise: Masking Weave Mazes
Solution: Masking Weave Mazes
Growing With Prim's
Introducing Prim's Algorithm
Understanding the Simplified Version of Prim's Algorithm
Understanding the True Version of Prim's Algorithm
Understanding the Growing Tree Algorithm
Quiz Yourself on Prim's Algorithm
Exercise: Modified Prim's Algorithm
Solution: Modified Prim's Algorithm
Combining, Dividing
Understanding Eller’s Algorithm
Implementing Eller's Algorithm
Recursive Division
Implementing Recursive Division
In-Depth Analysis of the Recursive Division Algorithm
Quiz Yourself on the Recursive Division and Eller's Algorithms
Exercise: Aldous-Broder as a Wall Adder
Solution: Aldous-Broder as a Wall Adder
Extending Mazes into Higher Dimensions
Understanding Dimensions
Introducing 3D Mazes
Implementing a Third Dimension
Displaying a 3D Maze
Representing Four Dimensions
Quiz Yourself on Extending Mazes into Higher Dimensions
Exercise: Shuffled 2D Mazes
Solution: Shuffled 2D Mazes
Bending and Folding Our Mazes
Cylinder Mazes
Möbius Mazes
Introducing Cube Mazes
More Methods for Cube Mazes
Displaying the Cube Grid
Introducing Sphere Mazes
Implementing POV-Ray on Sphere Mazes
Quiz Yourself on Bending and Folding Mazes
Exercise: Linking Worlds
Solution: Linking Worlds
Conclusion
Summary of Maze Algorithms
Final Word
Mazes for Programmers
/
...
/
Exercise: Zeta Mazes
Exercise: Zeta Mazes
Learn to draw zeta mazes.
We'll cover the following...
A sneak peek into zeta mazes
Coding challenge
A sneak peek into zeta mazes
We've learned two
...