Dijkstra's algorithm.
N
D
P