Add an implementation of Dijkstra's algorithm in C++