The project is to build a system in Java that solves mazes. The mazes will be described by numbered nodes and pairwise connections. The system should take a file name as an argument, and a second argument that says whether the system should generate one or all solutions to the maze. The two modes are thus, give one solution, and give all solutions. Example test data is given.
The system should be run on the training mazes.
The system should solve the three training sets ( maze 1, maze 2, and maze 3) in both modes. Note that in all of the mazes, the starting state is 0, and the goal state is 1.
You need to use the system clock to time the algorithm. Use System.nanoTime(); Report times for all solutions and the first solution.