data-structure3 graph theory and using Dijkstra algorithm to calculate the shortest bath between cites