Answer C).
Dijkstra's Algorithm --> Greedy and DP, Single source shortest path (May not work with negative edges)
Bellman Ford Algorithm --> DP and Single source shortest path (Used for negative weights)
Floyd-Warshall Algorithm --> All pairs shortest path
Johnson Algorithm --> Reweighting done by bellman ford .