The Maze
Explore how to solve the maze puzzle by simulating a rolling ball navigating through empty spaces. Learn to apply depth-first search techniques to traverse the maze based on defined movement rules. Understand how to track visited positions and manage recursion within maze boundaries. This lesson helps you prepare for algorithmic problems related to pathfinding in coding interviews.
We'll cover the following...
Description
The maze is a puzzle game where the ball moves in the available empty spaces. The player aims to get the ball to the specified destination. The ball can go through the empty spaces by rolling up, down, left, or right, but it will not stop rolling until it hits a wall or reaches the destination and then hits a wall or reaches the end of a grid. After hitting a wall, the ball will choose the next direction before moving forward. The borders of the maze are considered walls.
Constraints
maze[i][j]must be0or1, initially.mazeLength==maze.lengthmazeSubarrayLength==maze[i].length- 1 <=
mazeLength,mazeSubarrayLength<= 100 start.length,end.length== 2- 0 <= ,