Data structures

Workiva/go-datastructures

Go-datastructures is a collection of useful, performant, and threadsafe Go datastructures.

Stars2854
Contributors25
Forks241
Watchers196
Issues4

tylertreat/BoomFilters

Probabilistic data structures for processing continuous, unbounded streams.

Stars751
Contributors5
Forks36
Watchers26
Issues2

google/btree

This package provides an in-memory B-Tree implementation for Go, useful as a an ordered, mutable data structure.

Stars686
Contributors5
Forks75
Watchers50
Issues4

fatih/set

Set data structure for Go

Stars386
Contributors3
Forks26
Watchers14
Issues7

0xAX/go-algorithms

Algorithms and data structures for golang

Stars277
Contributors3
Forks53
Watchers21
Issues1

willf/bloom

Go package implementing Bloom filters

Stars265
Contributors11
Forks45
Watchers20
Issues1

EverythingMe/inbloom

Cross language bloom filter implementation

Stars253
Contributors3
Forks13
Watchers25
Issues3

dustin/go-probably

Probabilistic Data Structures for Go

Stars207
Contributors2
Forks13
Watchers13
Issues2

zond/gotomic

Non blocking data structures for Go

Stars201
Contributors3
Forks15
Watchers7
Issues0

seiflotfy/cuckoofilter

Cuckoo Filter: Practically Better Than Bloom

Stars192
Contributors5
Forks13
Watchers11
Issues1

armon/go-radix

Golang implementation of Radix trees

Stars143
Contributors3
Forks14
Watchers6
Issues0

ryszard/goskiplist

A skip list implementation in Go

Stars116
Contributors3
Forks28
Watchers9
Issues0

cznic/b

Package b implements a B+tree.

Stars114
Contributors4
Forks14
Watchers5
Issues0

dhconnelly/rtreego

an R-Tree library for Go

Stars112
Contributors4
Forks31
Watchers2
Issues1

stathat/treap

This Go package provides a balanced binary search tree data structure, expected to have logarithmic height.

Stars89
Contributors1
Forks20
Watchers8
Issues3

tgruben/roaring

This is a go port of the Roaring bitmap data structure. The original java version can be found at https://github.com/lemire/RoaringBitmap and the supporting paper at http://arxiv.org/abs/1402.6407

Stars89
Contributors8
Forks14
Watchers12
Issues7

zhenjl/bloom

Bloom filters implemented in Go.

Stars89
Contributors1
Forks9
Watchers6
Issues0

datastream/btree

pure golang btree

Stars85
Contributors3
Forks22
Watchers10
Issues0

aybabtme/datagen

Generate datastructures for your types.

Stars73
Contributors1
Forks1
Watchers2
Issues0

surge/bloom

Bloom filters implemented in Go.

Stars67
Contributors1
Forks10
Watchers4
Issues0

mediocregopher/seq

A go library providing clojure-like immutable data-structures and functional ways to interact with them

Stars66
Contributors1
Forks3
Watchers2
Issues0

mndrix/ps

Persistent data structures for Go

Stars58
Contributors2
Forks7
Watchers5
Issues0

seiflotfy/dlCBF

d-left Counting Bloom Filter

Stars50
Contributors1
Forks5
Watchers3
Issues0

gaigepr/lazylist

A Lazy Concurrent List-Based Set Algorithm in Go

Stars36
Contributors1
Forks1
Watchers2
Issues0

xojoc/bitset

BitSet data structure in golang

Stars35
Contributors1
Forks1
Watchers1
Issues1

kellydunn/go-art

an adaptive radix tree implementation in go

Stars33
Contributors1
Forks6
Watchers3
Issues6

3xian/elephantlist

A data structure that allows fast search within an ordered sequence of elements

Stars21
Contributors1
Forks1
Watchers2
Issues0

sauerbraten/radix

An implementation of the radix tree data structure (http://en.wikipedia.org/wiki/Radix_tree).

Stars19
Contributors2
Forks8
Watchers1
Issues0

dgryski/go-cuckoof

Go implemetation of cuckoo filters

Stars19
Contributors1
Forks3
Watchers1
Issues0

natefinch/tree

A statically typed binary tree in Go without casts or reflection

Stars16
Contributors1
Forks3
Watchers1
Issues0

glenn-brown/skiplist

Go package implementing an indexable ordered multimap

Stars15
Contributors1
Forks3
Watchers3
Issues3

dgryski/dgobloom

A simple Bloom Filter implementation in Go

Stars14
Contributors1
Forks3
Watchers1
Issues0

zeebo/sbloom

A scalable bloom filter written in Go

Stars9
Contributors1
Forks3
Watchers2
Issues0

vizidrix/ringbuffer

RingBuffer for Go

Stars8
Contributors1
Forks1
Watchers2
Issues0