MoonTools.Graph/README.md

975 B

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