One of the most challenging tasks in Computer Science education is the teaching of algorithms. Visualisations enrich traditional lectures and provide a significant enhancement to a student’s experience regardless of their prior knowledge on the topic. String-Matching Algorithms have always posed a significant theoretical challenge and will continue to play a vital role in today’s data-driven world. The fields that take advantage of such algorithms are countless.
The aim was to create a software product that would be used in the " Algorithmics H course " at the School of Computing Science at the University of Glasgow. I created a tool that could be efficiently integrated into the course curriculum. The initial goal was to visualise the three main string matching algorithms (Brute Force, Knutt Moris Pratt and Boyer-Moore). Early achievement of this goal allowed for the visualisation of five more algorithms.
Note that the visualisations are accompanied by the parallel execution of the code. Each line executed is highlighted, along with the animation.
ClientUniversity of GlasgowYear2015TechnologiesJava, JavaFX, CSS, XMLCodeCheck it on GitHub