Cargando…

Mazes for programmers : code your own twisty little passages /

Detalles Bibliográficos
Clasificación:Libro Electrónico
Autor principal: Buck, Jamis (Autor)
Otros Autores: Carter, Jacquelyn (Editor )
Formato: Electrónico eBook
Idioma:Inglés
Publicado: [Place of publication not identified] : Pragmatic Programmers, [2015]
Colección:Pragmatic programmers bookshelf.
Temas:
Acceso en línea:Texto completo (Requiere registro previo con correo institucional)
Tabla de Contenidos:
  • Cover; Table of Contents; Acknowledgments; Introduction; About This Book; Online Resources; Part Iâ#x80;#x94;The Basics; 1. Your First Random Mazes; Preparing the Grid; The Binary Tree Algorithm; The Sidewinder Algorithm; Your Turn; 2. Automating and Displaying Your Mazes; Introducing Our Basic Grid; Implementing the Binary Tree Algorithm; Displaying a Maze on a Terminal; Implementing the Sidewinder Algorithm; Rendering a Maze as an Image; Your Turn; 3. Finding Solutions; Dijkstraâ#x80;#x99;s Algorithm; Implementing Dijkstraâ#x80;#x99;s; Finding the Shortest Path; Making Challenging Mazes; Coloring Your Mazes.
  • Your Turn4. Avoiding Bias with Random Walks; Understanding Biases; The Aldous-Broder Algorithm; Implementing Aldous-Broder; Wilsonâ#x80;#x99;s Algorithm; Implementing Wilsonâ#x80;#x99;s Algorithm; Your Turn; 5. Adding Constraints to Random Walks; The Hunt-and-Kill Algorithm; Implementing Hunt-and-Kill; Counting Dead Ends; The Recursive Backtracker Algorithm; Implementing the Recursive Backtracker; Your Turn; Part IIâ#x80;#x94;Next Steps; 6. Fitting Mazes to Shapes; Introducing Masking; Implementing a Mask; ASCII Masks; Image Masks; Your Turn; 7. Going in Circles; Understanding Polar Grids; Drawing Polar Grids.
  • Adaptively Subdividing the GridImplementing a Polar Grid; Your Turn; 8. 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; Your Turn; 9. Braiding and Weaving Your Mazes; Braiding Mazes; Cost versus Distance; Implementing a Cost-Aware Dikstraâ#x80;#x99;s Algorithm; Introducing Weaves and Insets; Generating Weave Mazes; Your Turn; Part IIIâ#x80;#x94;More Algorithms; 10. Improving Your Weaving; Kruskalâ#x80;#x99;s Algorithm; Implementing Randomized Kruskalâ#x80;#x99;s Algorithm.
  • Better Weaving with KruskalImplementing Better Weaving; Your Turn; 11. Growing With Primâ#x80;#x99;s; Introducing Primâ#x80;#x99;s Algorithm; Simplified Primâ#x80;#x99;s Algorithm; True Primâ#x80;#x99;s Algorithm; The Growing Tree Algorithm; Your Turn; 12. Combining, Dividing; Ellerâ#x80;#x99;s Algorithm; Implementing Ellerâ#x80;#x99;s Algorithm; Recursive Division; Implementing Recursive Division; Your Turn; Part IVâ#x80;#x94;Shapes and Surfaces; 13. Extending Mazes into Higher Dimensions; Understanding Dimensions; Introducing 3D Mazes; Adding a Third Dimension; Displaying a 3D Maze; Representing Four Dimensions; Your Turn.
  • 14. Bending and Folding Your MazesCylinder Mazes; MÃœbius Mazes; Cube Mazes; Sphere Mazes; Your Turn; A1. Summary of Maze Algorithms; Aldous-Broder; Binary Tree; Eller's; Growing Tree; Hunt-and-Kill; Kruskal's (Randomized); Prim's (Simplified); Prim's (True); Recursive Backtracker; Recursive Division; Sidewinder; Wilson's; A2. Comparison of Maze Algorithms; Dead Ends; Longest Path; Twistiness; Directness; Intersections; Your Turn; Index; â#x80;#x93; A â#x80;#x93;; â#x80;#x93; B â#x80;#x93;; â#x80;#x93; C â#x80;#x93;; â#x80;#x93; D â#x80;#x93;; â#x80;#x93; E â#x80;#x93;; â#x80;#x93; F â#x80;#x93;; â#x80;#x93; G â#x80;#x93;; â#x80;#x93; H â#x80;#x93;; â#x80;#x93; I â#x80;#x93;; â#x80;#x93; J â#x80;#x93;; â#x80;#x93; K â#x80;#x93;; â#x80;#x93; L â#x80;#x93;; â#x80;#x93; M â#x80;#x93;; â#x80;#x93; N â#x80;#x93.