Welcome to KaosCollections |
KaosCollections is a .NET library that provides generic collection classes for storing elements that are both sorted and indexed. Based on order statistic B+ trees, the classes that emulate Microsoft's SortedDictionary and SortedSet provide greater capability than their counterparts while outperforming them for large collection sizes. Also included is a sorted map class and a sorted bag class. All classes provide getting elements by index, getting the index of an element, range removal by index, range enumeration, and more.
The primary types provided are:
This library is built as a .NET Standard project with multitargeting to:
To install using Package Manager:
To install using the .NET CLI:
To install using the Visual Studio gallery:
To install using a direct reference to a .dll binary:
Download the .nuget package from either:
As archives, individual binaries may be extracted from the .nuget package for specific platforms. A project may then reference the extracted platform-specific .dll directly.
Installing as a NuGet package will provide IntelliSense and object browser documentation from the .xml file.
For complete documentation:
An offline version is available as a .chm file. This file may need to be unblocked using the file properties dialog:
Examples, benchmarks, and roadmap may be viewed here:
Complete source code with embedded XML documentation is hosted at GitHub. This repository is a single Visual Studio solution with additional files in the root:
Building the library requires Visual Studio 2017 or greater:
Building documentation requires Sandcastle Help File Builder: