Dijkstra's Algorithm For those who are confused about the path A, E, D, F being the candidate for the answer, Dijkstras algorithm is a greedy algorithm meaning that it will always choose the thing that seems to best right now (without regard for how it may impact future choices). In this case, it chose A-B instead of A-E because the distance 4 < 7, hence ignoring the possibility of having a smaller path. This is what makes it greedy; it always goes for the next easiest solution.
Dijkstra's algorithm essentially uses breadth first search with greedy approach to come up with the shortest distance between given two nodes. Here is a video that explains Dijkstra's algorithm with the help of examples and animations.