Como o comportamento assintótico da implementação ingênua do algoritmo de Dijkstra é:
\(O(n^2 + m)\), à medida que o número de vértices aumenta, a velocidade de trabalho torna-se insatisfatória.
Várias estruturas de dados podem ser usadas para melhoria: Pilhas de Fibonacci, conjuntos
set ou uma fila de prioridade
priority_queue.
Considere um exemplo com
conjunto, como resultado, a assintótica final é:
\(O(n log (m))\) ,
detalhes.