Go Data structures

Open-source Go projects categorized as Data structures

Top 23 Go Data structure Projects

  • gods

    GoDS (Go Data Structures). Containers (Sets, Lists, Stacks, Maps, Trees), Sets (HashSet, TreeSet, LinkedHashSet), Lists (ArrayList, SinglyLinkedList, DoublyLinkedList), Stacks (LinkedListStack, ArrayStack), Maps (HashMap, TreeMap, HashBidiMap, TreeBidiMap, LinkedHashMap), Trees (RedBlackTree, AVLTree, BTree, BinaryHeap), Comparators, Iterators, Enumerables, Sort, JSON

  • go-datastructures

    A collection of useful, performant, and threadsafe Go datastructures.

  • Go

    Algorithms Implemented in GoLang

    Latest mention: Gopher Gold #15 - Wed Oct 14 2020 | dev.to | 2020-10-14

    TheAlgorithms/Go (Go): Algorithms Implemented in GoLang

  • golang-set

    A simple set type for the Go language. Trusted by Docker, 1Password, Ethereum and Hashicorp.

  • gota

    Gota: DataFrames and data wrangling in Go (Golang)

  • nutsdb

    A simple, fast, embeddable, persistent key/value store written in pure Go. It supports fully serializable transactions and many data structures such as list, set, sorted set.

  • boomfilters

    Probabilistic data structures for processing continuous, unbounded streams.

  • roaring

    Roaring bitmaps in Go (golang)

  • willf/bloom

    Go package implementing Bloom filters

  • cuckoofilter

    Cuckoo Filter: Practically Better Than Bloom

  • hyperloglog

    HyperLogLog with lots of sugar (Sparse, LogLog-Beta bias correction and TailCut space reduction)

  • gocache

    ☔️ A complete Go cache library that brings you multiple ways of managing your caches

  • dasel

    Query, update and convert data structures from the command line. Comparable to jq/yq but supports JSON, TOML, YAML, XML and CSV with zero runtime dependencies.

    Latest mention: Parsing JSON at the CLI: A Practical Introduction to jq (and more!) | reddit.com/r/commandline | 2020-12-21

    Cool tool, thanks for sharing. I also like this one which is more complex like jq but also supports many different data formats https://github.com/TomWright/dasel

  • bitset

    Go package implementing bitsets

  • trie

    Data structure and relevant algorithms for extremely fast prefix/fuzzy string searching.

  • algorithms

    CLRS study. Codes are written with golang.

  • graph

    Graph algorithms and data structures

  • go-geoindex

    Go native library for fast point tracking and K-Nearest queries

  • gostl

    Data structure and algorithm library for go, designed to provide functions similar to C++ STL

  • merkletree

    A Merkle Tree implementation written in Go.

  • hilbert

    Go package for mapping values to and from space-filling curves, such as Hilbert and Peano curves.

  • goskiplist

    A skip list implementation in Go

  • ttlcache

    An in-memory string-interface{} map with various expiration options for golang

NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020). The latest post mention was on 2020-12-21.


What are some of the best open-source Data structure projects in Go? This list will help you:

Project Stars
1 gods 9,529
2 go-datastructures 5,892
3 Go 4,632
4 golang-set 1,795
5 gota 1,494
6 nutsdb 1,479
7 boomfilters 1,323
8 roaring 1,084
9 willf/bloom 950
10 cuckoofilter 748
11 hyperloglog 736
12 gocache 729
13 dasel 699
14 bitset 645
15 trie 515
16 algorithms 464
17 graph 411
18 go-geoindex 327
19 gostl 232
20 merkletree 231
21 hilbert 225
22 goskiplist 222
23 ttlcache 198