Algorithm to determine the fastest route passing in all points

algorithmsdijkstragraphrouting

Given a starting point A and an end point E, I need an algorithm to determine the minimum transit route in a city that passes through all points (A, B, C, D, E) and is the fastest possible. I know I can represent this problem in a graph, but I'm not sure which algorithm to use in this situation.
I was thinking of using the Dijkstra algorithm, but it provides only the path between two vertices of the graph, without necessarily going through all the vertices.

Best Answer

This is an NP-Hard problem

There has been lots of research on approximations to the TSP. You should look up "traveling salesmen approximations". These will be fast, but not guaranteed optimal/correct.

If you manage to solve this correctly/optimally in polynomial time, then you will be an eternal CS hero.