This program demonstrates three different ways to store a graph in C++: edge list, adjacency matrix, and adjacency list. It also utilizes Dijkstra's algorithm to create a basic map navigation system for a small mock city map.
In-depth, information can be found on the wiki tab.

//to come
This program provides three different representations for the graph:
- Edge List: The edges are stored as pairs (source, destination, weight) in an array of some sort.
- Adjacency Matrix: The graph is represented as a 2D matrix, where matrix[i][j] represents the weight of the edge between nodes i and j.
- Adjacency List: Each node is associated with a list of adjacent nodes and their corresponding edge weights.
Dijkstra's algorithm is implemented to find the shortest path between two given nodes in the graph. The algorithm is implemented in the shortestPath function.
- Create a graph using the desired representation (edge list, adjacency matrix, or adjacency list).
- Add nodes and edges to the graph to represent the mock city map.
- Prompt the user to enter the source and destination vertices for navigation.
- Use Dijkstra's algorithm to find the shortest path between the source and destination.
- Display the shortest path and its total distance to the user.