Class DfsStrategy
java.lang.Object
com.edu.xmum.CST210.AlgorithmStrategy.DfsStrategy
- All Implemented Interfaces:
IFindPathStrategy
Implementation of the depth-first search (DFS) strategy for pathfinding in a maze.
This class uses a DFS algorithm to find a path from the starting position to the goal position without recording the backtracking process.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbooleanfindPath(IMazeModel mazeModel, List<int[]> path, boolean[][] visited, int x, int y, int goalX, int goalY) Finds a path using DFS without recording the backtracking process.
-
Constructor Details
-
DfsStrategy
public DfsStrategy()
-
-
Method Details
-
findPath
public boolean findPath(IMazeModel mazeModel, List<int[]> path, boolean[][] visited, int x, int y, int goalX, int goalY) Finds a path using DFS without recording the backtracking process.- Specified by:
findPathin interfaceIFindPathStrategy- Parameters:
mazeModel- The maze model containing the maze structure.path- A list to store the path found from start to goal.visited- A 2D boolean array to keep track of visited positions in the maze.x- The x-coordinate of the current position.y- The y-coordinate of the current position.goalX- The x-coordinate of the goal position.goalY- The y-coordinate of the goal position.- Returns:
- True if a path is found, false otherwise.
-