ALGO Master is a algorithm simulation software developed by Samin Yaser and A.M. Aahad, two students of Department of CSE, University of Dhaka.
An algorithm is a step by step method of solving a problem. The traditional approach to learning an algorithm is to understand it from texts and imagining it. Algorithm simulation is a visual approach to the process. ALGO Master is a project based on Algorithm Simulation. It focuses on the visualization of the basic sorting and searching algorithms. The user is able to learn the algorithms through an animated sorting procedure and is also able to practice the algorithms by sorting the data manually, thus evaluating his/her progress.
The objective of our project is to teach the basic algorithms to new programmers. Many people often struggle at the start of their programming life with the basic sorting and searching algorithms. Sometimes, they don’t understand the nested loops or the iteration of steps, sometimes they struggle just because they can’t visualize the working algorithm. We tried to make a program which visualizes the algorithms to make a person understand the steps and iteration happening in between. They can see the algorithm working, pause and play the algorithm at their will, see the pseudocode update for the algorithm at each step and even practice on their own to master their understanding of the process.
- Setup Visual Studio 2017. You just need to install Desktop Development with C++ to run ALGO Master.
- Configure SFML with visual studio.
- Copy all the files of ALGO Master to your local directory.
- Add C++ files (.cpp) in the Source Files and the header files (.h) from Header files folder in the Header Files.
- Run local windows debugger in Visual Studio to run the program.
Users should learn the algorithm by reading the pseudo code and try to relate it with the simulation on the left. If needed, users can see each step by pausing and step forwarding each iteration or comparison. Users can also evaluate his/her understanding of the algorithm in the practice section by doing the sort manually. There is an instruction panel in the right side to guide how to practice each algorithm. We recommend to search some related problems in the internet and try to solve those for further practice.