List of C++ libraries for Graph Theory

Riccardo T. picture Riccardo T. · Apr 16, 2012 · Viewed 18.7k times · Source

I'm going to start a scientific project about automata and graph theory, and I'm searching for a graph library that supports features like:

  • directed/undirected graphs
  • graph isomorphism test (i.e. is graph g1 isomorphic w.r.t. g2?)
  • subgraph isomorphism test (i.e. is a graph g1 isomorphic to a subgraph of g2?)
  • graph search, visits and such
  • possibly, quite fast since I need to make some serious computations

I know about the Boost Graph Library, but it lacks subgraph testing as far as I understood from its documentation.

So, my question is: which are the best c++ graph libraries, please? They do not have to provide support for every feature I need, I know it's certainly possible that no existing library fits perfectly my needs.

Answer

EdChum picture EdChum · Apr 16, 2012

You could use iGraph: http://igraph.sourceforge.net/ which is a C library which should satisfy what you are after.

There is also http://ubietylab.net/ubigraph/, there is a related SO post here: https://stackoverflow.com/questions/2751826/which-c-graph-library-should-i-use.

I have not used ubigraph so cannot comment on that, I mainly use networkX and iGraph

UPDATE

It seems that ubigraph is dead now so only igraph is maintained currently