The best first strategy implementation. Various strategies derive from the best first strategy For example Dijkstra, A*, etc.