https://github.com/buraksezer/sorted
SortedSet and SortedMap with skip list for Go
https://github.com/buraksezer/sorted
golang key-value map skiplist skiplistmap sorted-map sorted-set
Last synced: about 1 month ago
JSON representation
SortedSet and SortedMap with skip list for Go
- Host: GitHub
- URL: https://github.com/buraksezer/sorted
- Owner: buraksezer
- License: bsd-3-clause
- Created: 2018-11-17T11:48:33.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2019-09-25T06:47:16.000Z (over 5 years ago)
- Last Synced: 2025-04-06T06:29:12.090Z (about 1 month ago)
- Topics: golang, key-value, map, skiplist, skiplistmap, sorted-map, sorted-set
- Language: Go
- Homepage:
- Size: 23.4 KB
- Stars: 9
- Watchers: 3
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# sorted
[](https://godoc.org/github.com/buraksezer/sorted) [](https://travis-ci.org/buraksezer/sorted) [](http://gocover.io/github.com/buraksezer/sorted) [](https://goreportcard.com/report/github.com/buraksezer/sorted) [](https://opensource.org/licenses/BSD-3-Clause)SortedSet and SortedMap with [skip list](https://en.wikipedia.org/wiki/Skip_list) for Go. It also supports
sorting by score.## Rationale
It's designed to be used in [Olric](https://github.com/buraksezer/olric). I need a GC friendly SortedSet/SortedMap
implementation which implements Load/Dump functions and my keys and values are byte slices.## Features
* Implemented with Skip list,
* Uses only one byte slice. It's GC friendly,
* Supports compaction: Frees claimed memory when it's needed,
* Supports sorting keys by score,
* Implements Load/Dump methods to store whole data set or transfer over network.## Limitations
* Keys and values are byte slices due to its design.
## Usage
## Contributions
Please don't hesitate to fork the project and send a pull request or just e-mail me to ask questions and share ideas.:w