Graph These codes show different types of graphs: - Undirected Graph - Directed Graph - Weighted Undirected Graph - Weighted Directed graph And show many different operations you can do on: - Traversing using DFS. - Traversing using BFS. - Knowing number of connected components - Getting Topological Sort - Getting Minimum Spanning Tree using Kruskal Algorithm - Getting Minimum Spanning Tree using Prim's Algorithm - Getting Shortest path using Dijkstra Algorithm - MaxFlow Algorithm Notes: * The codes doesn't completely handle all cases, you can increase what you want to meet your needs. * When the user enter the graph the initial vertex must be '0' vertex you can handle the code to begin from index '1' if you want. * There are some files of codes that depend on each other, so if you want to run one you must download the other, and download the needed required libraries