A GC-friendly graph theory library for .NET Standard intended for use with games.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Evan Hemsley 51a91d678e update badge in README 2 years ago
Graph rename some files 2 years ago
test remove Core namespace 2 years ago
.drone.yml switch to DroneCI 2 years ago
.gitignore add vscode to ignored 2 years ago
LICENSE add LGPL 3 2 years ago
MoonTools.Graph.sln rename some files 2 years ago
README.md update badge in README 2 years ago

README.md

MoonTools.Graph

NuGet Badge Build Status

A GC-friendly graph theory library for C# intended for use with games.

Usage

Graph implements various algorithms on the following graph structures:

  • Directed
  • Directed Weighted
  • Directed Weighted Multigraph
  • Undirected
  • Undirected Weighted

Notes

Graph algorithms return lazy enumerators to avoid creating GC pressure. If you wish to hang on to the results of an evaluation, make sure to call ToArray() or ToList() on the IEnumerable.

TODO

  • change Neighbors tests to use Equal instead of Contains
  • change Edge id from a Guid to an integer index on the edge
  • Prim Minimum Spanning Tree
  • Kruskal Minimum Spanning Tree
  • Undirected Weighted Multigraph