Poiché il comportamento asintotico dell'ingenua implementazione dell'algoritmo di Dijkstra è:
\(O(n^2 + m)\), all'aumentare del numero di vertici, la velocità del lavoro diventa insoddisfacente.
Varie strutture di dati possono essere utilizzate per il miglioramento: Fibonacci heap,
set set o una coda di priorità
priority_queue.
Considera un esempio con
set, come risultato, l'asintotico finale è:
\(O(n log (m))\) ,
dettagli.