I don't think a c++ priority queue is the right structure for the dijkstra queue, because it contains no functionality for an easy lookup or deletion of elements.
The right structure would be a fibonacci heap, but there is none in the std library.
Does anyone have suggestions for a better, c++ implemented structure?