Acid e3b4119785
Go / build (push) Successful in 32s
modified: README.md
2026-07-26 00:46:20 -04:00
2026-07-08 01:56:37 -04:00
2026-07-19 20:30:50 -04:00
2026-07-25 23:53:46 -04:00
2026-07-25 23:53:46 -04:00
2026-07-24 03:57:15 -04:00
2026-04-04 21:03:11 -04:00
new
2026-05-09 17:56:46 -04:00
2026-07-26 00:46:20 -04:00

Data Structures & Algorithms in Go

Note

I made this repo while following the book to learn go and DSA. The implementations are not gonna be the most performant. Consider looking for another repo if you need any of there in your serious project.

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

Graph

  • Unweighted
  • Weighted
  • Directed
  • DAG

Sets

  • Union Find

Probabilistic

  • Bloom filter
  • Hyper Log Log

Algorithms ωψγ

Etc

  • Kadane's Algorithm
  • Euclidean GCD
  • Fibonacci
  • Miller Rabin prime test
  • Modular Arithmetic
  • Sieve of Eratosthenes

Heaps & Trees

  • Priority Queue
  • Heap Sort
  • BFS Breadth-First Search

Graphs

  • Dijkstra's
  • DFS & BFS
  • Topological Sort with Kahn's 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

Graphs

go doc -all ./graphs | bat -l go

Tests

go test ./tests/...

External references

https://xlinux.nist.gov/dads/

Disclosure

Unit tests and explanations written by claude

S
Description
No description provided
Readme 205 KiB
Languages
Go 100%