Data structures and algorithms implemented in Go (generics), for study and review.
The goal is to understand how each structure works by building it from scratch.
- ArrayList (Dynamic Array)
- SinglyLinkedList
- DoublyLinkedList
- CircularLinkedList
- ArrayStack
- LinkedStack
- ArrayQueue
- LinkedQueue
- CircularQueue
- Deque (Double-ended Queue)
- PriorityQueue
- BinaryTree (basic)
- BinarySearchTree (BST)
- AVLTree (self-balancing)
- RedBlackTree
- Trie (Prefix Tree)
- Heap (MinHeap, MaxHeap)
- B-Tree
- Segment Tree
- HashMap
- HashSet
- BloomFilter
- AdjacencyMatrix
- AdjacencyList
- WeightedGraph