Several different implementations of the A-Star search algorithm, including a Bidirectional version.
The algorithm is used for graph traversal and for finding the shortest path in a graph.
It is an improved version of the Dijkstra's Shortest path algorithm.