Students such as I study the optional discrete component of the OCR A Further Mathematics A-Level. One of the topics in this component is graph theory, which includes several algorithms that can be executed on weighted graphs, including:
- Dijkstra’s algorithm.
- Prim’s algorithm (also known as Jarník's algorithm).
- Kruskal’s algorithm.
- Solving the Chinese postman problem (also known as the route inspection problem).
- Nearest Neighbour algorithm.
- Finding lower bounds for the Travelling salesman problem.
Thus, this project was created as an educational tool for teaching these algorithms graphically, by tracing them and/or solving them where appropriate. There are many possible users for such a tool, including:
- Private candidates such as self-taught and/or home-schooled students. They may not have access to the same resources, or whoever is home-schooling them may not be familiar with the material themselves.
- Students struggling with homework questions.
- Teachers who want their students to be more engaged with the topic and who are open to using it in lesson.
When dealing with the source code, use JDK 8 or 11 set to compile to Java 7.
Legal stuff: The cloud-form UI skin by Raymond "Raeleus" Buckley was used under the CC BY 4.0 license, and was modified to use a custom colour scheme and true type font of my choosing.