This library provides implementations of various collection data structures fully written in Golang.
- Array List
- Singly Linked List
- Doubly Linked List
- Singly Circular Linked List
- Doubly Circular Linked List
- Stack:
- Slice Stack
- List Stack
- Queue:
- Slice Queue
- Dynamic Slice Queue
- List Queue
- Dynamic List Queue
- Stack Queue (Two stacks)
- Deque (Double-Ended Queue)
- Priority Queue
- Binary Search Tree (BST)
- AVL Tree (In Progress)
- Red-Black Tree
- B-Tree
- Trie
- Heap (Min-Heap, Max-Heap)
- Graph (Adjacency List, Adjacency Matrix)
- Set (Hash Set, Tree Set)
- Skip List
- Bloom Filter
- Segment Tree
- Fenwick Tree (Binary Indexed Tree - BIT)
- Suffix Tree
- Disjoint Set (Union-Find)
- Interval Tree
- K-D Tree
- Treap
- Ternary Search Tree (TST)
- Splay Tree
- 2-3 Tree
- Quad Tree
- Patricia Trie
- Rope (Fast String Concat)
- Van Emde Boas Tree
- Leftist Heap
- Binomial Heap
- Fibonacci Heap
To install the library, use the following command:
go get github.com/0x0FACED/go-collections