A modern and efficient graph object library The goal of this project is to provide a lightweight and user-friendly graph library using modern C++ functionalities.
Future versions would include more formal testing, official documentation, C++ 20 concepts, and working GUI.
The project requires CLang 14 (https://releases.llvm.org/14.0.0/tools/clang/docs/ReleaseNotes.html) and CMake 3.16 (https://cmake.org/) or more
This libary is header-only. To install first clone this repository with
$ git clone https://github.com/SpaceQuark/Graph-Library
You can then build (compile) and run this project by typing
./build app
and
./run app
in the terminal
Users can easily create a graph object (in the example below, an integral, weighted, undirected graph)
#include "Graph.hpp"
int main()
{
Graph<int, int> g;
// Adding edges to graph object
g.add_edge(1,2,5);
g.add_edge(2,4,10);
// printing edge list
g.pEL();
/* prints
Start: 1 End: 2 Weight 5
Start: 2 End: 1 Weight 5
Start: 2 End: 4 Weight 10
Start: 4 End: 2 Weight 10
*/
}