Skip to content

A web-based application that showcases a variety of pathfinding algorithms and maze generation techniques.

Notifications You must be signed in to change notification settings

utkarshsingx/Algorithms-Visualiser

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Algorithm Visualiser

A web-based application that showcases a variety of pathfinding algorithms and maze generation techniques.

Algorithms

Our application supports the following pathfinding algorithms:

  • Dijkstra's Algorithm (Weighted): The father of pathfinding algorithms, Dijkstra's Algorithm guarantees the shortest path by exploring nodes in a graph based on their distance from the starting node.
  • A* (Weighted): A more efficient version of Dijkstra's Algorithm that uses heuristics to guide the search towards the goal node, guaranteeing the shortest path.
  • Greedy Best-first Search (Weighted): A faster and more heuristic-heavy version of A*, which does not guarantee the shortest path but provides a good approximation.
  • Breath-first Search: A simple algorithm that explores nodes in a graph level by level, guaranteeing the shortest path.
  • Depth-first Search: An algorithm that explores nodes recursively until it reaches a dead end or finds the goal node.

Maze Generation

Our application also features a Recursive Division Maze Generation algorithm, which creates complex mazes with varying levels of difficulty.

Tools Used

To build this project, we used:

  • HTML5 for structuring content
  • CSS3 for styling and layout
  • JavaScript for implementing algorithm logic
  • React for building reusable UI components

How to Use

  1. Select an algorithm from the dropdown menu or use the keyboard shortcuts (F1-F5) to switch between algorithms.
  2. Adjust parameters such as grid size, grid density, and obstacle density using the sliders or text inputs.
  3. Click "Start" to begin generating a maze or running an algorithm on your chosen settings.
  4. Observe how each algorithm navigates through the maze or graph structure in real-time.

We hope you enjoy exploring this interactive visualisation tool!

Contributing

Contributions are welcome! If you'd like to contribute to this project, please fork this repository and submit a pull request with your changes. If you have any questions or suggestions, please feel free to contact the project owner:

About

A web-based application that showcases a variety of pathfinding algorithms and maze generation techniques.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published