Dijkstra's Shortest Path
Requires non-negative edge weights.
Negative edges can invalidate the greedy finalization step.
Binary heap implementation: typically O((V+E) log V).
For sparse graphs, adjacency lists are preferred.
Bellman-Ford is appropriate when negative edges must be supported.