a47cc44223e5953b4c4d16a840e68ffc07d60a3b
Data Structures & Algorithms in Go
Linear
- Stack
- Queue
- Double Linked List
- Circular Buffer
- Deque (segmented array), ⛔ Not possible in Go
Tree — hierarchical, parent/child relationships
- Binary Search Tree
- AVL Tree
- Heap (min/max)
- Trie
Sets
- Union Find
- Bloom filter
- HyperLogLog
Algorithms ωψγ
- Kadane's Algorithm
- Euclidean gcd
- Fibonacci
- Heap Sort
- Modular Arithmetic
- Sieve of Eratosthenes
- BFS Breadth-First Search
- DFS Depth-First Search
- Karatsuba algorithm
Documentation
linear Structures
go doc -all ./linear | bat -l go
algorithms
go doc -all ./algo | bat -l go
Sets
go doc -all ./sets/ | bat -l go
trees
for p in ./trees/ ./trees/avl ./trees/heap; do go doc -all "$p"; done | bat -l go
Tests
go test ./tests/...
External references
Disclosure
Unit tests and explanations written by claude
Description
Languages
Go
100%