Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mihazupan/sharpcollections
A set of specialized high-performance data structures, not available in the framework
https://github.com/mihazupan/sharpcollections
algorithms collections csharp datastructures dotnet-core
Last synced: 18 days ago
JSON representation
A set of specialized high-performance data structures, not available in the framework
- Host: GitHub
- URL: https://github.com/mihazupan/sharpcollections
- Owner: MihaZupan
- License: bsd-2-clause
- Created: 2019-02-03T10:41:24.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2019-06-18T15:11:15.000Z (over 5 years ago)
- Last Synced: 2024-10-06T16:39:18.010Z (29 days ago)
- Topics: algorithms, collections, csharp, datastructures, dotnet-core
- Language: C#
- Homepage:
- Size: 1.44 MB
- Stars: 9
- Watchers: 3
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: license.txt
Awesome Lists containing this project
README
# Sharp Collections [![Build Status](https://travis-ci.org/MihaZupan/SharpCollections.svg?branch=master)](https://travis-ci.org/MihaZupan/SharpCollections) [![Build status](https://ci.appveyor.com/api/projects/status/uwno7633b39ikdvn/branch/master?svg=true)](https://ci.appveyor.com/project/MihaZupan/sharpcollections/branch/master) [![Coverage Status](https://coveralls.io/repos/github/MihaZupan/SharpCollections/badge.svg?branch=master)](https://coveralls.io/github/MihaZupan/SharpCollections?branch=master) [![NuGet](https://img.shields.io/nuget/v/SharpCollections.svg)](https://www.nuget.org/packages/SharpCollections/) [![Donate](https://img.shields.io/badge/Donate-PayPal-green.svg)][PayPalMe]
A set of specialized high-performance data structures, not available in the framework.
Compatible with Framework 3.5+, Standard 2.0+ and Core 2.1+.
Newer features (like spans) are available thanks to preprocessor directives.
Support for legacy platforms (<= Net 4.6) will be dropped, should they prove to complicate development.
## Currently available
#### Compact Prefix Tree
[`CompactPrefixTree`](examples/CompactPrefixTree.md)
Available from Framework 3.5.
A highly memory-efficient and GC-friendly string prefix tree.
Used in the amazing [Markdig library](https://github.com/lunet-io/markdig)
#### Work Scheduler
[`WorkScheduler`](examples/WorkScheduler.md)
Available from Standard 2.0.
A helper class that helps schedule work on your `TaskScheduler` of choice (`ThreadPool` by default).
Work is scheduled in parallel, but only one item from each bucket at a time.
#### Binary Heap
[`BinaryHeap`](examples/BinaryHeap.md)
Available from Framework 3.5.
A simple generic binary heap implementation for types that implement `IComparable`.
## License
This library is released under the [BSD-Clause 2 license][license].
TL;DR: Use however you want as long as you give attribution
## Donate
If you find yourself using this library, please consider donating!
[![Donate](https://img.shields.io/badge/Donate-PayPal-green.svg)][PayPalMe]## Author
[Miha Zupan](https://github.com/MihaZupan)
[License]: https://raw.githubusercontent.com/MihaZupan/SharpCollections/master/license.txt
[PayPalMe]: https://www.paypal.me/MihaZupanSLO