Find the shortest path between source and destination using A* algorithm. Args: graph: The graph to search. source: The starting vertex. destination: The target vertex. heuristic: A function that estimates the distance between two vertex values.
(
graph: Graph,
source: Vertex,
destination: Vertex,
heuristic: Callable[[Any, Any], float],
)
source not stored for this graph (policy: none)