- Array
- Stack / Queue
- Priority Queue (heap)
- LinkedList (single / double)
- Tree / Binary Tree
- Hash Table
- Disjoint Set
- Trie
- Bloom Filter
- LRU Cache
- General Coding
- In-order / Pre-order / Post-order traversal
- Greedy
- Recursion / Backtrace
- Breadth-first search
- Depth-first search
- Divide and Conquer
- Dynamic Programming
- Binary Search
- Graph