Project DescriptionAlgorithm and data-structure library for .NET 3.5 and up. Algorithmia contains sophisticated algorithms and data-structures like graphs, priority queues, command, undo-redo and more.
Algorithmia is one of the pillars of
LLBLGen Pro v3 and is used in production successfully since May 2010. Many of the classes and algorithms in Algorithmia contain references to papers and articles on Wikipedia or other websites where you can find additional information regarding the algorithm or data-structure implemented.
The core design of Algorithmia is about making algorithms and data-structures which are known for many years available to the .NET developer in easy to use and properly documented classes and methods. No class or method implemented in Algorithmia re-implements a .NET BCL (base class library) class or method unless it was necessary to do so (e.g. the linked list in .NET is re-implemented as it doesn't have an O(1) concat operation, which is necessary for the Fibonacci heap).
Although Algorithmia is stable since May 2010, we still update it with new algorithms and data-structures regularly. If you have algorithms or data-structures to contribute, please create a Mercurial fork and send us a pull request.
At the time of this writing, the user documentation isn't ready. We hope to add user documentation in the coming week(s). Till we have proper user documentation ready, please consult the reference manual available in the downloads section, the test code in the Tests project and the preliminary user documentation in the 'Documentation' section to get an idea what's available in Algorithmia and if it's useful for you.