PathFinder Demonstration:

I wrote this pathfinder example after hearing an interview question that asked the potential candidate how they would represent a subway in memory.

This example uses a typical graph data structure to represent the individual stations and the rail lines connecting them. Dijkstra's path finding algorithm is used to find the shortest path between two points in the graph.

The datastructure is loaded into memory from this XML file. I created this file from studying the map image. It is not intended to be accurate.

The ability to draw a real-time representation of your route on the map was added as an afterthought, and is slightly inaccurate due to the course nature of the data points in the graph.