# Shortest path for weighted graph (cost associated edges) - Dijkstra's algorithm works when all weights are non-negative - If there are negative weights use Bellman-Ford. - Priority queue + min heap is optimal when compared to a function that operates on a list.