Here is my implementation of a directed and undirected graph ADT with Dikjstra's Algorithm.
The Project was built for CS 261 - Data Structures.
To run the program on your local machine, first clone the project.
git clone https://github.com/mdemichele/graph_implementations.git
There are a number of built tests for each graph type. To run the tests for the directed graph, use:
python3 d_graph.py
To run the tests for the undirected graph, use:
python3 ud_graph.py
- Learned how to build class implementations of both directed and undirected graphs. The class implementations included functions for adding vertices, adding edges, removing edges, checking for valid paths through the graph, and checking for the presence of cycles within the graph.
- Implemented Depth-first Search and Breadth-first Search algorithms for both directed and undirected graphs
- Implemented Dijkstra's algorithm on a directed graph.
Note: I'll add brief descriptions of the expected outputs for the testing functions if this project somehow gets used by others :)