Contains algorithms for competitive programming contests such as ICPC in Python.
Italicized items have not yet been implemented. Bolded items have been implemented but do not have comprehensive tests set up.
- Segment Tree
- Lazy Segment Tree
- Fenwick Tree
- Dinic's Max-flow
- Push-Relabel Max-flow
- Min-cost Max-flow
- Min/Max Heap with Update
- Binary Search
- Ternary Search
- Union Find
- Min-Span Tree
- Matrices
- Exponentiation by Squaring
- Simplex
- Eratosthene's Sieve
- Miller-Rabin
- Pollard-Rho
- Bellman-Ford
- Floyd-Warshall
- Cycle-detection
- Tree Diameter
- Tarjan's Bridge Finding Algorithm
- Tarjan's Algorithm
- 2-SAT
- Graph Coloring
- Binary Lifting
- Geometry Functions
- Convex Hull
- Hull Diameter
- KMP
- Rolling Hash
- FFT
- Cartesian Tree
- Implicit Treap
- Mobius Function
- Add comprehensive tests for everything
- Refactor and cleanup verbose code
- Add automatic LaTeX / PDF generation
- Organize algorithms