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.
- Sparse Lazy Segment Tree
- Fenwick Tree
- Dinic's Max-flow
- Push-Relabel Max-flow
- Min-cost Max-flow
- Min/Max Heap with Update
- Binary 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 Algorithm
- 2-SAT
- Graph Coloring
- Binary Lifting
- Geometry Functions
- Convex Hull
- Hull Diameter
- KMP
- Add comprehensive tests for everything
- Refactor and cleanup verbose code
- Add automatic LaTeX / PDF generation
- Organize algorithms