A*?
Moderator: Board moderators
A* uses a heuristic to guide it's search. The only difference is what value you use for nodes on the priority queue. In Dijkstra you order nodes with their distance from the start node. In A* you simply add a heuristic value which estimates the distance from the current node to the goal. This way the search will choose likely nodes first. As long as the heuristic is admissible (never pessimistic, less than or equal to the real distance) the solution found will be optimal.