QuikGraph

.NET library that provide mainly graphs structures and algorithms for C#. QuikGraph provides generic directed/undirected graph data structures and algorithms for .NET. It comes with algorithms such as depth first seach, breath first search, A* search, shortest path, k-shortest path, maximum flow, etc... This package is a version of the original QuickGraph renamed QuikGraph and ported to .NET Core. It should be seen as an alternative to the old frozen QuickGraph from CodePlex but with fixes. It does not include every sub modules of the original library such as F# stuff, adapters, etc. This build is only the Core of QuikGraph taking advantage of .NET Core. Supported platforms: - .NET Standard 1.3+ - .NET Core 1.0+ - .NET Framework 3.5+ Supports Source Link


Keywords
QuickGraph, QuikGraph, Graph, Structure, Algorithm, C#, .NET, algorithms, csharp, dotnet, graphviz, msagl, serialization, structures
License
MS-PL
Install
Install-Package QuikGraph -Version 2.5.0

Documentation

Build AppVeyor Build Status
Coverage Coveralls Coverage Status SonarQube SonarCloud Coverage
Quality Quality Gate
Nugets Nuget Status QuikGraph
Nuget Status QuikGraph.Serialization
Nuget Status QuikGraph.Graphviz
Nuget Status QuikGraph.Data
Nuget Status QuikGraph.MSAGL
Nuget Status QuikGraph.Petri
License MS-PL

QuikGraph

What is QuikGraph?

QuikGraph provides generic directed/undirected graph data structures and algorithms for .NET.

QuikGraph comes with algorithms such as depth first search, breath first search, A* search, shortest path, k-shortest path, maximum flow, minimum spanning tree, etc.

QuikGraph was originally created by Jonathan "Peli" de Halleux in 2003 and named QuickGraph.

It was then updated to become YC.QuickGraph.

This version of QuickGraph, renamed QuikGraph, is a fork of YC.QuickGraph, and I tried to clean the library to provide it as a clean NuGet packages using modern C# development (.NET Core).

The library has been cleaned and improved. It comes with a lot of fixes for issues of the original library. It also has a wide support of .NET targets to make it compatible with the most development environments.

Getting started with QuikGraph


Targets

Supports Source Link (use dedicated symbol package)

To get it working you need to:


Contributing

Build

  • Clone this repository.
  • Open QuikGraph.sln.

Notes

The library get rid of PEX that was previously used for unit tests and now uses NUnit3 (not published).

I would be very pleased to receive pull requests to further test, improve or add new features to the library.


Usage

Packages

QuikGraph is available on NuGet in several modules.

Where to go next?


Maintainer(s)

Contributor(s)

This project exists thanks to all the people who have contributed to the code base.