Curated list of Data Structures and Algorithms with their implementations in Java
- Disjoint Sets
- Fenwick Tree
- Segment Tree
- Stack
- Linked List
- Set
- Hash Map
- Graph
- Heap
- Fast Exponentiation / Exponential Squaring / Fast Modulo Multiplication
- Euclidean GCD
- Soundex
- Window Sliding Technique
- Backtracking
- MO's Algorithm / Square Root Decomposition
- 2D Binary Search
- Convex Hull / Graham's Scan
- Convex Hull / Andrew's Monotone Chain Method
- Topological Sort of Directed Graph
- DDA Line Drawing Algorithm
- Ternary Search
- Merge Sort