Skip to content
This repository has been archived by the owner on May 22, 2023. It is now read-only.

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

License

Notifications You must be signed in to change notification settings

MoonsideGames/MoonTools.Core.Graph

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MoonTools.Core.Graph

NuGet Badge CircleCI

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

About

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

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages