Implemented a Graph data structure represented as a collection of Vertices and a collection of Edges, where each Edge is uniquely identified by 2 Vertices and a Vertex is identified by an associated ID. Implemented commonly used Graph operations such as:
- Topological Sorting
- Highest/Lowest Cost Path
- Shortes Path
- Cycle detection in an undirected graph
Learned:
- Graph Representations
- Graph Traversal Techniques
- Dijsktra's Algorithm
- A* Algorithm
- Bellman-Ford Algorithm